Android線程的消息分發機制

Handler:多線程

處理者,通常在主線程建立(在工做線程也能夠建立,這個下一篇會詳細說到),處理各類線程發送過來的* Message,根據Message內容在主線程作不一樣的處理。oop

Message:線程

消息體,在多線程中擔任一個內容載體的角色,包含了消息的類型,參數,數據等內容,其中還包括一個重要的對象,那就是它將會被髮送給那個handler。翻譯

MessageQueue:對象

消息隊列,全部發送給handler處理的消息都會保存在消息隊列中,其內部使用鏈表的形式維護這些message。隊列

Looper:消息隊列

這個怎麼說呢,它的英文解釋爲一個打環的裝置,我也不知道該怎麼翻譯,它的做用是能夠讓線程一直活着,而不是執行完一個功能代碼後就死掉了,每一個Looper的實例有一個MessageQueue和當前線程對象,正是這兩個類讓線程能夠一直活着,也就是Looper打環的裝置的意思吧。咱們的主線程就是由於它才能夠一直執行而不退出。鏈表

相關文章
相關標籤/搜索