How to send a message to a dead thread handler

I have a start and stop method that checks if my connection is supported. This is for a softphone application, so the connection should be as long as the user opens the application. The code for these methods is below.

public void startJob(){
    mJobThread = new Thread(new Runnable() {
        @Override
        public void run() {
            while (!Thread.currentThread().isInterrupted() && Thread.currentThread().isAlive()) {
                try {
                    Thread.sleep(7000);
                    mJobHandler.post(myJobRunnable);
                } catch(InterruptedException e){
                    System.out.println("startJob Interrupt Runnable");
                    Thread.currentThread().interrupt();
                    return;
                } catch (Exception e) {
                    Log.v("startJob Runnable", e.getLocalizedMessage());
                }
            }
        }
    });
    mJobThread.start();
}

public void stopJob(){
    if(mJobHandler != null){
        mJobHandler.removeCallbacks(myJobRunnable);
    }
    if(mJobThread != null) {
        mJobThread.interrupt();
    }
}

The problem I'm getting a RuntimeException (nothing crashes the application), saying

W / MessageQueue (1946): java.lang.RuntimeException: Handler (android.os.Handler) {421ac808} sending message to a Handler on a dead thread
W / MessageQueue (1946): at android.os.MessageQueue.enqueueMessage (MessageQueue.java:309)
W / MessageQueue (1946): at android.os.Handler.enqueueMessage (Handler.java:623)
W / MessageQueue (1946): at android.os.Handler.sendMessageAtTime (Handler.java►92)
W/MessageQueue( 1946):  at android.os.Handler.sendMessageDelayed(Handler.java:563)
W/MessageQueue( 1946):  at android.os.Handler.post(Handler.java:323)
W/MessageQueue( 1946):  at com.zxd.activity.Manager$5.run(Manager.java:256)
W/MessageQueue( 1946):  at java.lang.Thread.run(Thread.java:841)

256 - try{ startJob. startJob, stopJob, . , , startJob stopJob

, ?

+4

Source: https://habr.com/ru/post/1545853/


All Articles