美文网首页IT@程序员猿媛安卓开发
安卓异步消息处理机制

安卓异步消息处理机制

作者: 追求科技的足球 | 来源:发表于2019-05-09 20:53 被阅读3次

    安卓中的异步消息处理机制主要有四个部分:
    Message、Handler、MessageQueue、Lopper
    下面对其进行介绍:
    1、Message
    在线程之间传递信息,可以在内部携带少量的信息,用于在不同线程之间交换数据。是Handler接收和处理的消息对象。
    2、MessageQueue
    消息队列,主要用于存放所有通过Handler发送的消息。采用先进先出的方式管理Message,这部分消息会一直存在于消息队列中,等待被处理。程序创建Looper对象时,会在它的构造器中创建MessageQueue对象,每个线程中只有一个MessageQueue对象。
    3、Looper
    每个线程只能拥有一个Looper,Looper是线程中MessageQueue的管家,调用Looper的loop()方法后,就会进入一个无限循环中,每当发现MessageQueue中存在一条消息,就将它取出,并传递到Handler的handleMessage()方法中。
    Looper构造器源代码:

    private Looper(){
        mQueue = new MessageQueue();
        mRun = true;
        mThread = Thread.currentThread();
    }
    

    4、Handler
    用于发送和处理消息,发送消息使用Handler的sendMessage()方法,发出的消息经过一系列处理后,最终传递到Handler的handleMessage()方法中。

    相关文章

      网友评论

        本文标题:安卓异步消息处理机制

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