美文网首页
安卓中handler消息机制总结

安卓中handler消息机制总结

作者: 花见花开杜 | 来源:发表于2016-05-06 20:19 被阅读0次

    每个程序员都知道,handler不管是在工作还是面试时候,都是经常用到或者被问到的,这里,我做了一些hanler的总结,希望对大家有用…

    handler消息机制的原理: 在activity创建的时候, 主线程的ActivityMain 中会自动调用并创建一个looper 的对象,并在后台调用loop() 方法, 进行对消息队列 messageQue 的轮询查看, 如果子线程通过handler

                                           发送一条消息, 那么looper 轮询器会从 messageque 中取出这条消息, 在主线程中执行,

    new Message() , 和 Message.obtain() : 都是创建message 对象 , 一般用后者, 后者内部会判断 消息池中是否有消息对象, 有的话复用, 并且从消息池中移除,

    handler 中的一些疑虑: Handler ,线程, looper, MessageQue 之间的关系是 N:1:1:1  可以有多个handler 对象来发消息, 那么looper 是如何分辨是哪一个handler 发来的消息,

    这是因为hanler 在发消息的时候, 会把自身的引用以target 的形式放到message 中 , 那么looper 在轮询的时候, 会先取出target 判断是哪个handler 发来的消息

    相关文章

      网友评论

          本文标题:安卓中handler消息机制总结

          本文链接:https://www.haomeiwen.com/subject/yjpjrttx.html