課程
/移動開發
/Android
/Android必學-AsyncTask基礎
? ? 什么時候用thread?什么時候用asynctask
2015-12-19
源自:Android必學-AsyncTask基礎
正在回答
asynctask內部其實是使用的一個線程池,能同時運行5條線程,線程生命周期不用你自己管理,想要異步處理的東西往里扔就行了,而且doInBackground執行完的結果可以直接在onPostExecute方法參數里得到,直接更新UI界面。
thread就有些麻煩,每次使用都要自己new一個線程,要自己管理其生命周期,用不好沒準還會發生死鎖。而且android還不允許在非主線程的線程更新UI,這樣的話thread運行得到的結果如果需要更新UI可能還需要發一個handler通知主線程更新界面,代碼寫起來比較凌亂不如asynctask一目了然好維護。
qq_草莓泡芙i_0 提問者
舉報
了解Android中AsyncTask的使用方法,掌握異步線程的使用
Copyright ? 2025 imooc.com All Rights Reserved | 京ICP備12003892號-11 京公網安備11010802030151號
購課補貼聯系客服咨詢優惠詳情
慕課網APP您的移動學習伙伴
掃描二維碼關注慕課網微信公眾號
2015-12-19
asynctask內部其實是使用的一個線程池,能同時運行5條線程,線程生命周期不用你自己管理,想要異步處理的東西往里扔就行了,而且doInBackground執行完的結果可以直接在onPostExecute方法參數里得到,直接更新UI界面。
thread就有些麻煩,每次使用都要自己new一個線程,要自己管理其生命周期,用不好沒準還會發生死鎖。而且android還不允許在非主線程的線程更新UI,這樣的話thread運行得到的結果如果需要更新UI可能還需要發一個handler通知主線程更新界面,代碼寫起來比較凌亂不如asynctask一目了然好維護。