Handler
Bert.King
这个作者很懒,什么都没留下…
展开
-
Handler的前世今生——总结篇
通俗地讲,Android中的多线程通信就可以认为是Handler机制。 在Handler的整个机制中,我们首先要知道四个部分: Message MessageQueue; Handler; Looper; Message中的三个重要属性: target —— 绑定Handler的; callback —— Handler 的post()相关方法和Message进行关联的; when —— ...原创 2020-03-24 16:51:13 · 178 阅读 · 0 评论 -
Handler的前世今生5 —— MessageQueue
MessageQueue文档 通过前面的文章,我们知道很多操作其实都是MessageQueue来负责: Looper 的loop() 中使用 MessageQueue的next() 方法; Looper的quit()中使用MessageQueue的quit() 方法; Handler中的enqueueMessage() 使用MessageQueue 的enqueueMessage() 方法; ...原创 2020-03-24 13:57:53 · 168 阅读 · 1 评论 -
Handler的前世今生4 —— Handler
Handler文档 我们使用Handler其实就是就是2个功能: 发送消息; 处理消息; 但是在这之前 ,我们要做好准备工作,那就是必须得有Looper和MessageQueue才行。 Handler就类似一个快递站,如果你没有对应的 运输设备(Looper) 和存储仓库(MessageQueue),就没办法运行啊。 1. 使用Handler的前提条件 通过源码,我们发现Handler其实...原创 2020-03-23 16:09:41 · 186 阅读 · 0 评论 -
Handler的前世今生3——Message
1. Message的target Message文档 Each Handler has its own name-space for message codes, so you do not need to worry about yours conflicting with other handlers. 每个Handler都有自己命名空间的消息码,这样不必担心和其它Handler冲突。 ...原创 2020-03-22 18:24:10 · 185 阅读 · 0 评论 -
Handler的前世今生2——Looper
Handler,MessageQueue,Looper这个铁三角, Handler : 发送和处理消息; MessageQueue :存储消息; Looper:传输消息(MessageQueue —> Handler) ; 1. Looper的功能 Handler究其本质就是用来实现线程间通信。在Android开发过程中,我们通常在子线程(Thread) 中将消息发送给 主线程(Mai...原创 2020-03-22 15:25:17 · 209 阅读 · 0 评论 -
Handler的前世今生1——ThreadLocal
1.简要 有些初级开发者总是认为Handler是用来更新UI的。这从其主要使用场景上讲,是没有问题的。但是要想更好的去了解Handler及其背后的运行机制,这个认识往往会导致对Handler理解的不够深刻,可谓是一叶障目,不见泰山。(PS:我在面试过程中,经常会考察面试者对于Handler的认识) 片面认识—— Handler是用来更新UI的。 2. 面试迷茫点 No Looper; Loop...原创 2020-03-19 12:47:34 · 273 阅读 · 0 评论