Android Handler通訊機制的工做原理

前言

  • Android開發的多線程應用場景中,Handler機制十分經常使用安全

  • 本文就圖文詳解一下 Handler機制 的工做原理多線程


目錄

image


1. 定義

一套 Android 消息傳遞機制架構


2. 做用

在多線程的應用場景中,將工做線程中需更新UI的操做信息 傳遞到 UI主線程,從而實現 工做線程對UI的更新處理,最終實現異步消息的處理併發

image


3. 爲何要用 Handler消息傳遞機制

  • 答:多個線程併發更新UI的同時 保證線程安全
  • 具體描述以下

image


4. 相關概念

關於 Handler機制中的相關概念以下:異步

在下面的講解中,我將直接使用英文名講解,即 HandlerMessageMessage QueueLooper,但願你們先熟悉相關概念oop

image


5. 工做原理 解析

下面,我將定性地講解Handler機制的工做流程線程

5.1 工做流程解析

Handler機制的工做流程主要包括4個步驟:code

  1. 異步通訊準備
  2. 消息發送
  3. 消息循環
  4. 消息處理

具體以下圖:orm

image

5.2 工做流程圖

image

5.3 示意圖

image

5.4 特別注意

線程(Thread)、循環器(Looper)、處理者(Handler)之間的對應關係以下:cdn

  • 1個線程(Thread)只能綁定 1個循環器(Looper),但能夠有多個處理者(Handler)
  • 1個循環器(Looper) 可綁定多個處理者(Handler)
  • 1個處理者(Handler) 只能綁定1個1個循環器(Looper)

image

至此,關於Handler的異步消息傳遞機制的工做原理 講解完畢。


6. 總結

  • 本文對Handler機制的工做原理進行了全面講解 若是你看到了這裏,以爲文章寫得不錯就給個唄?若是你以爲那裏值得改進的,請給我留言。必定會認真查詢,修正不足。謝謝。

但願讀到這的您能轉發分享關注一下我,之後還會更新技術乾貨,謝謝您的支持!

轉發+點贊+關注,第一時間獲取最新知識點

Android架構師之路很漫長,一塊兒共勉吧!

相關文章
相關標籤/搜索