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架构师之路很漫长,一块儿共勉吧!

相关文章
相关标签/搜索