我有一个工人Thread
与Handler
相关联。 Handler
收到Message
,并在工作人员Thread
中执行一些操作。我想“停止”Activity
的Thread
onPause()
。在我的Activity
的onPause()
方法中,我向我的Handler
发送退出消息,以便我的工作人员Thread
将突破Looper.loop()
并从run()
返回。正确的方式来结束Android中的线程
- 这是停止
Thread
的正确方法吗?如果不是,应该怎么做? - 我看到代码示例调用
t1.join()
从主Thread
其中t1是他们的工人Thread
。join()
的用途是什么?- 在我的例子中,我需要做一个
join()
吗?
我的工人Thread
:
class WorkerThread extends Thread {
private static final int QUIT = -1;
public Handler mHandler;
public void run() {
Looper.prepare();
mHandler = new Handler() {
public void handleMessage(Message msg) {
// do stuff
if(msg.what == QUIT){
Looper.myLooper().quit();
}
// do stuff
}
};
Looper.loop();
}
}