我正在UI線程中執行一些任務,並創建了一個爲我執行網絡任務的工作線程。不過,一旦工作線程完成,我需要執行一些重要的事情。任何人都可以給我一個解決方案嗎?Android ::在主線程中執行其他任務之前阻止主線程完成主線程
{
Main thread...
worker thread created..and executed..
//I need to wait here for the worker thread to finish//
some useful task to be done
}
在此先感謝!
感謝哥們!我瞭解你提到的方法。但是,如果我有多個工作線程,我將如何處理?我的意思是我有3個工作線程,比如A,B,C,它們正在執行不同的任務。我的主線程需要等待所有這些線程完成,以便它可以繼續並在主線程中執行新的任務T.請建議。 – user1601533 2012-08-15 19:56:06
@ user1601533:讓三個後臺線程阻塞某些內容(例如'CountDownLatch')。一旦閂鎖被釋放,三個線程中的兩個只是終止,而第三個使用'runOnUiThread()'或等價的方式將工作發佈到主應用程序線程。 – CommonsWare 2012-08-15 20:00:32
是的。或者讓主線程在完成每個工作人員後更新某個狀態變量,並在某個狀態下啓動另一個任務。 – ekholm 2012-08-15 20:04:18