最好使用HandlerThread而不是其他類似的類我試圖了解使用的最佳用例HandlerThread。根據(jù)定義:“用于啟動具有l(wèi)ooper的新線程的方便類。然后可以使用looper來創(chuàng)建處理程序類。請注意,仍然必須調(diào)用start()。”我可能是錯的,但類似的功能,我可以通過使用實現(xiàn)Thread,Looper和Handler。那么我HandlerThread什么時候應(yīng)該使用?一個例子真的很有幫助。
2 回答

Cats萌萌
TA貢獻1805條經(jīng)驗 獲得超9個贊
這是HandlerThread和Looper源代碼的鏈接。
如果你看看這兩個,你會發(fā)現(xiàn)它HandlerThread
正是它所說的 - 一種方便的方式來啟動Thread
它有一個Looper
。為什么會這樣?因為線程默認沒有消息循環(huán)。這HandlerThread
只是創(chuàng)建一個簡單的方法。你可以用Handler
,Thread
和Looper
- 從源代碼判斷復(fù)制這個功能- 答案是肯定的。
一個Executor
是不同的。一個Executor
需要提交可運行的任務(wù)和-你猜怎么著-執(zhí)行它們。為什么這有必要?它允許您將任務(wù)的執(zhí)行與其實際內(nèi)容分離。你什么時候用這個?假設(shè)您遇到需要同時執(zhí)行多個任務(wù)的情況。您可以選擇使用Executor
,在一個線程上運行它們,以便它們以串行方式執(zhí)行?;蛘吣梢允褂霉潭ǖ木€程池,以便一些(但不是全部)同時運行。在任何一種情況下,任務(wù)的實質(zhì) - 即它實際上在做什么 - 都與它的執(zhí)行方式分開。
- 2 回答
- 0 關(guān)注
- 300 瀏覽
添加回答
舉報
0/150
提交
取消