Android 保持HandlerThread活动的成本
在我的android应用程序中,我正在监听一些不经常被触发的系统事件,每次事件发生后,我都会发布一个任务,该任务会在短时间延迟后执行,通常在后台执行1分钟。 任务完成后,在等待某些条件的情况下,可以再次发布该任务 我的方法是实例化一个具有HandlerThread的Singleton,并将我的任务发布到该HandlerThread。请参阅下面的代码片段 我知道这个线程在我的应用程序的整个生命周期中都是活跃的。我的问题是: 即使HandlerThread不工作,保持其活动状态是否会影响性能Android 保持HandlerThread活动的成本,android,multithreading,handler,android-handler,android-handlerthread,Android,Multithreading,Handler,Android Handler,Android Handlerthread,在我的android应用程序中,我正在监听一些不经常被触发的系统事件,每次事件发生后,我都会发布一个任务,该任务会在短时间延迟后执行,通常在后台执行1分钟。 任务完成后,在等待某些条件的情况下,可以再次发布该任务 我的方法是实例化一个具有HandlerThread的Singleton,并将我的任务发布到该HandlerThread。请参阅下面的代码片段 我知道这个线程在我的应用程序的整个生命周期中都是活跃的。我的问题是: 即使HandlerThread不工作,保持其活动状态是否会影响性能 pub
public class Observer {
private HandlerThread workerThread;
private Handler mHandler;
private Observer() {
workerThread = new HandlerThread("observer-thread", Process.THREAD_PRIORITY_BACKGROUND);
workerThread.start();
mHandler = new Handler(workerThread.getLooper());
}
public static Observer getInstance() {
if (mInstance == null) {
synchronized (Observer.class) {
if (mInstance == null) {
mInstance = new Observer();
}
}
}
return mInstance;
}
public void post(...) {
...
}
}
不,空闲时它正在等待