美文网首页Android Tech@IT·程序猿Android知识
Android消息处理机制简单分析(Handler,Looper

Android消息处理机制简单分析(Handler,Looper

作者: Wing_Li | 来源:发表于2016-07-25 17:19 被阅读201次

    如果本文帮助到你,本人不胜荣幸,如果浪费了你的时间,本人深感抱歉。
    希望用最简单的大白话来帮助那些像我一样的人。如果有什么错误,请一定指出,以免误导大家、也误导我。
    本文来自:http://www.jianshu.com/users/320f9e8f7fc9/latest_articles
    感谢您的关注。

    首先说明:本文不会讲的太多,只是简单分析了一下,网上关于 Android消息处理 的介绍已经非常多了,而且都讲的挺好的,就不重复的制造轮子了。
    我呢,也是看了看源码,然后在此记录,便于以后回顾。亲自去看一看,会比看别人的文章好很多倍,记忆也会更加深刻。即使忘了,回忆起来也会非常快。

    分享一篇文章:
    http://www.cnblogs.com/codingmyworld/archive/2011/09/14/2174255.html
    只不过这篇文章是2011年9月写的,有点早。
    去年我也是把这篇文章看了好多遍的。


    对于 Message,MessageQueue,Looper ,Handler 的简单分析,
    如下图:

    昨天有人问了个问题:在子线程中new Handler()会怎么样?

    下图就是答案,因为在子线程中,没有 Looper ,必须手动调用 Looper.prepare(); 之后,才能把本线程升级为 Looper线程。

    也正是这个问题,验证了第一张图里面的结论,真正做事的人,是 Message,MessageQueue,Looper 这帮人,Handler 只是更方便的管理他们。
    而 Looper 就是核心类。

    那为什么在主线程中我们都没有手动调用 Looper.prepare(); 也能使用 Handler 呢?

    看下面这张图,知道答案了吧?

    <br />


    收藏一些好文章:
    Android消息机制的原理及源码解析

    相关文章

      网友评论

        本文标题:Android消息处理机制简单分析(Handler,Looper

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