前往小程序,Get更优阅读体验!
立即前往
首页
学习
活动
专区
工具
TVP
发布
社区首页 >专栏 >图文详解Android Handler通信机制的工作原理

图文详解Android Handler通信机制的工作原理

原创
作者头像
Android架构
修改2019-07-22 11:23:43
9740
修改2019-07-22 11:23:43
举报
文章被收录于专栏:Android进阶之路Android进阶之路

前言

  • Android开发的多线程应用场景中,Handler机制十分常用
  • 本文就图文详解一下 Handler机制 的工作原理

目录

可以关注一下专栏Android高级开发架构(记得看专栏简介哦~)每天更新各种Android开发趣事、技术干货、进阶架构知识、面试经验分享等。如有好的文章也欢迎投稿。


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机制的工作原理进行了全面讲解

原创声明:本文系作者授权腾讯云开发者社区发表,未经许可,不得转载。

如有侵权,请联系 cloudcommunity@tencent.com 删除。

原创声明:本文系作者授权腾讯云开发者社区发表,未经许可,不得转载。

如有侵权,请联系 cloudcommunity@tencent.com 删除。

评论
登录后参与评论
0 条评论
热度
最新
推荐阅读
目录
  • 前言
  • 目录
  • 1. 定义
  • 2. 作用
  • 3. 为什么要用 Handler消息传递机制
  • 4. 相关概念
  • 5. 工作原理 解析
    • 5.1 工作流程解析
      • 5.2 工作流程图
        • 5.3 示意图
          • 5.4 特别注意
          • 6. 总结
          领券
          问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档