你的位置:首页 > 软件开发 > 操作系统 > 深入理解Android异步消息处理机制

深入理解Android异步消息处理机制

发布时间:2015-12-26 18:00:07
一。概述   Android 中的异步消息处理主要分为四个部分组成,Message、Hndler、MessageQueue 和 Looper。其关系如下图所示:  1. Message 是线程之间传递的消息,它可以在内部携带少量信息,用于在不同线程之间交换数据。 ...

深入理解Android异步消息处理机制

一。概述

 

  Android 中的异步消息处理主要分为四个部分组成,Message、Hndler、MessageQueue 和 Looper。其关系如下图所示:

 深入理解Android异步消息处理机制

  1. Message 是线程之间传递的消息,它可以在内部携带少量信息,用于在不同线程之间交换数据。

  2. MessageQueue 是消息队列,它主要用于存放所有由 Handler 发送过来的消息,这部分消息会一直在消息队列中,等待被处理。每个线程中只会有一个 MessageQueue 对象。

  3. Handler 是处理者,它主要用于发送和处理消息。 发送消息一般使用 handler  的 sendMessage()方法,处理消息会调用 handleMessage() 方法。

  4. Looper 是每个线程中 MessageQueue 的管家, 调用 loop() 方法后,就会进入到一个无限循环当中,然后每当发现 MessageQueue 中存在一条消息,就会将其取出,并传递到 handleMessage

()方法当中。每个线程中也只会有一个Looper对象。

 

二。详细介绍

1、Looper

  对于Looper主要是prepare()和loop()两个方法。

  

public static final void prepare() {     if (sThreadLocal.get() != null) {       throw new RuntimeException("Only one Looper may be created per thread");     }     sThreadLocal.set(new Looper(true)); } 

原标题:深入理解Android异步消息处理机制

关键词:Android

*特别声明:以上内容来自于网络收集,著作权属原作者所有,如有侵权,请联系我们: admin#shaoqun.com (#换成@)。

可能感兴趣文章

我的浏览记录