作者:
ssccg (23)
2016-07-25 08:26:00onPostExecute會在main thread上執行,但是你的main thread正在cdl.await(),所以就deadlock用CountDownLatch的話countDown要在做事的thread呼叫,不能在正在await的thread呼叫啊...另外AsyncTask如果用execute而不是用executeOnExecutor的話是在AsyncTask.SERIAL_EXECUTOR依序執行,所以其實用最後一個task的get()來等就好了但是block main thread仍然不是好的作法,如果用AsyncTask的設計概念,應該是在onPostExecute自己用一個計數變數去算完成了幾個,因為都在main thread所以不用考慮同步問題