我有一個工人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();
}
}