没有合适的资源?快使用搜索试试~ 我知道了~
Android 的Handler消息传递机制.pdf
1.该资源内容由用户上传,如若侵权请联系客服进行举报
2.虚拟产品一经售出概不退款(资源遇到问题,请及时私信上传者)
2.虚拟产品一经售出概不退款(资源遇到问题,请及时私信上传者)
版权申诉
0 下载量 22 浏览量
2022-07-10
02:48:22
上传
评论
收藏 307KB PDF 举报
温馨提示
试读
4页
Android 的Handler消息传递机制.pdf 学习资料 复习资料 教学资源
资源推荐
资源详情
资源评论
Android 的Handler消息传递机制
林志红
(北京信息职业技术学院)
摘 要:Android 提供了 Handler 作为主线程和子线程的纽带,Handler 主要用于
接收子线程发送的数据, 并用此数据配合主线程更新 UI 子线程可以用 handler 发
送一个 message,然后在 handler 的线程中来接收、处理该消息,这样可以避免
直接在 UI 主线程中处理事务而导致影响 UI 主线程的其他处理工作
关键词:Android, Handler, 消息传递
我们已经知道,Android 应用中访问网络的操作不能在主线程中进行,而子线程不能访
问主线程中的界面组件,这就产生了问题,联网读数据的线程无法更新 UI,UI 线程无法联
网读数据,如何才能使联网线程读到的数据反映在 UI 线程的界面组件中呢?解决这个问题
的方法就是借助 Handler 的消息传递机制。
Android 规定只能通过 Handler 机制更新 UI 最根本的目的就是解决多线程并发的问题,
假设在一个 Activity 当中,有多个线程去更新 UI,这时 UI 就成为临界资源,必须对更新 UI
的操作进行互斥处理,那么直接结果就是性能下降,Handler 通过消息队列,保证了消息处
理的先后有序,从而避免了互斥操作,也就避免了性能的下降。本次的目标就是学习 Handler
消息传递机制的具体使用。
1 什么是 Handler
Handler 是 Android 给我们提供的一套消息处理的机制,包括消息创建、传递、处理机制
我们可以通过 Handler 发送消息,也可以通过它来处理消息。
Handler 就像一个总公司的老板,这个总公司管理着若干个子公司,每个子公司都需要
给老板提交各种报告,如果所有人写完报告就往老板手里送,那么就可能使工作秩序非常混
乱,造成工作效率低下。合理的做法是进行专业分工,派专人在总公司和各个子公司之间传
递报告。公司雇佣专门的快递人员,当子公司需要提交报告时,就请快递人员帮助送一趟。
快递人员从子公司取得报告后快速送达总公司,并且把报告按提交时间的先后顺序整理好,
放在文件柜中。子公司提交的各种报告需要及时处理,总公司又聘请了专门的秘书人员将文
件柜中的报告按先后顺序一份一份地送到老板那里去处理。如果暂时没有需要处理的报告,
秘书可以休息会儿,发发呆,但是一旦有报告送来,就必须立刻进入工作状态,及时把报告
送到老板那里去。
一切听起来都很合理吧?不过有一点小尴尬,最近总公司遭遇了财政困难,已经雇不起
专门的快递人员了,老板只好亲自上门到各个子公司取回报告,不过别担心,老板是多面手,
快递业务对于老板来说也是轻车熟路,不会影响报告的处理效率。
现在回到 Hnadler。在介绍 Handler 机制前,首先了解以下几个概念:
Message: 消息,可理解为线程间传递的数据单元,相当于各个子公司提交的报告。
Message Queue: 消息队列,用来存放发布的消息,消息按先进先出原则出入队列,
消息队列相当于按时间顺序存放报告的文件柜。
Handler:Handler 是 Message 的主要处理者,负责将 Message 添加到消息队列以及对
消息队列中的 Message 进行处理。Handler 就是总公司的老板,雇佣快递人员传递报告,聘请
了秘书人员管理这些报告,他自己来处理这些报告。不过由于经济原因,他不得不辞掉快递
1 / 4
Android 的 Handler 消息传递机制
资源评论
努力搬砖的小王
- 粉丝: 16
- 资源: 7706
上传资源 快速赚钱
- 我的内容管理 展开
- 我的资源 快来上传第一个资源
- 我的收益 登录查看自己的收益
- 我的积分 登录查看自己的积分
- 我的C币 登录后查看C币余额
- 我的收藏
- 我的下载
- 下载帮助
最新资源
- alu.v
- H21-282学习参考.pdf
- QuestionTwo.java
- QuestionOne.java
- AWS Certified Solutions Architect Study Guide -SAA-C03 .docx
- 校园小情书微信小程序源码 社区小程序前后端开源 校园表白墙交友小程序.rar
- OA办公自动化管理系统(Struts1.2+Hibernate3.0+Spring2+DWR).rar
- 简历-求职简历-word-文件-简历模版免费分享-应届生-高颜值简历模版-个人简历模版-简约大气-大学生在校生-求职-实习
- 南京邮电大学数学实验:熟练掌握 Matlab 软件的基本命令和操作
- 简历-求职简历-word-文件-简历模版免费分享-应届生-高颜值简历模版-个人简历模版-简约大气-大学生在校生-求职-实习
资源上传下载、课程学习等过程中有任何疑问或建议,欢迎提出宝贵意见哦~我们会及时处理!
点击此处反馈
安全验证
文档复制为VIP权益,开通VIP直接复制
信息提交成功