1

假设我有一个班级,我HandlerThreadApplication它来做一些背景工作。我需要自己停止这个线程还是会被操作系统连同Application实例一起杀死?我的代码看起来像这样。

public class MyApplication extends Application {

    private Handler handler;

    @Override
    public void onCreate() {
        super.onCreate();

        HandlerThread handlerThread = new HandlerThread("WorkerThread");
        handlerThread.start();
        this.handler = new Handler(handlerThread.getLooper());
    }

    public void runInBackground(Runnable runnable) {
        this.handler.post(runnable);
    }

}
4

1 回答 1

0

通常,您不必担心应用程序终止时会终止线程。但是,当用户离开应用程序时,应用程序并不总是立即终止。在某些情况下,当后台线程继续执行不再需要的任务时,停止后台线程可能是有意义的,例如优化电池寿命。

于 2015-11-29T22:52:44.110 回答