android开发笔记:Handler、Looper、MessageQueen、Message的关系
一、什么是handler?
注:线程分为主线程(主线程又叫ui线程,只能有一个主线程)和子线程(可以有多个)handler只能在主线程里运行
handler是android给我们提供用来更新ui的一套机制,也是一套消息处理机制,我们可以发消息,也可以通过它 处理消息。
二、为什么要用handle?
- 1
- 2
因为android在设计的时候就封装了一套消息创建、传递、处理。如果不遵循就不能更新ui信息,就会报出异常(所谓的异步消息处理)
三、 handler的工作原理?
handler的工作原理是handler发送消息给messagequee给形成handle messagequee再由handle messagequee传递消息给looper(一个对象)最后由looper递交给 handler处理(一个handler里面必须要有一个looper)
handler、looper、messagequeen、message的关系
message: handler接收和处理的消息对象
messagequeen: 存储消息对象的队列
looper: 负责读取messagequeen中的消息,读到消息之后就把消息交给handler去处理。
handler:发送消息和处理消息
四、什么是message quee
message quee就是存储消息对象的队列(消息来自于message)
五、handler怎么用
handler主要有发送消息和处理消息两大作用
handler发送消息给message而message再由 messagequeen进行消息的存储,接着由looper负责读取 messagequeen中的消息,最后由handler处理消息。
总结:
looper的作用:每个线程只有一个looper,他负责管理messagequeue,会不断的从messagequeue取出消息,分发给对象 的handler
messagequeue的作用:由looper管理,而messagequeue则采用先进的方法来管理message!
handler的作用:它把消息发送给looper管理的messagequeue,并负责处理looper分发给他的消息。
上一篇: 浅谈事件冒泡和事件捕获
下一篇: ps怎么制作亚麻布布料的纹理?
推荐阅读
-
Android开发笔记之:Handler Runnable与Thread的区别详解
-
android的消息处理机制(图文+源码分析)—Looper/Handler/Message
-
Android开发笔记之:消息循环与Looper的详解
-
Android开发笔记之:Handler Runnable与Thread的区别详解
-
Android异步消息处理机制 深入理解Looper、Handler、Message的关系
-
Android异步消息机制-深入理解Handler、Looper和MessageQueue之间的关系
-
Android异步消息机制-深入理解Handler、Looper和MessageQueue之间的关系
-
Android中的Handler、Looper、Message、MessageQueue之间流程关系
-
android中message、messageQueue、Handler、looper的关系
-
Android 异步消息机制(Looper、Handler、MessageQueue、Message关系)