Android 異步通信:圖文詳解Handler機制工作原理

前言

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

  • 今天,我將圖文詳解 Handler機制 的工作原理,希望你們會喜歡


目錄

示意圖


1. 定義

一套 Android 消息傳遞機制


2. 作用

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


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

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

示意圖


4. 相關概念

關於 Handler機制中的相關概念如下:

在下面的講解中,我將直接使用英文名講解,即 HandlerMessageMessage QueueLooper,希望大家先熟悉相關概念

示意圖


5. 工作原理 解析

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

5.1 工作流程解析

Handler機制的工作流程主要包括4個步驟:
1. 異步通信準備
2. 消息發送
3. 消息循環
4. 消息處理

具體如下圖:

示意圖

5.2 工作流程圖

示意圖

5.3 示意圖

示意圖

5.4 特別注意

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

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

示意圖

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


6. 總結

  • 本文對Handler機制的工作原理進行了全面講解
  • 下面我將繼續深入講解 Android中的Handler異步通信傳遞機制的相關知識,如 使用教程、源碼解析等,有興趣可以繼續關注Carson_Ho的安卓開發筆記

請幫頂 / 評論點贊!因爲你的鼓勵是我寫作的最大動力!

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章