转自:http://blog.csdn.net/lingzhm/article/details/45026119 传统的进程间通信的方式有大致如下几种: (1) 管道(PIPE) (2) 命名管道(FIFO) (3) 信号量(Semphore) (4) 消息队列(MessageQueue) (5) ...
分类:
编程语言 时间:
2017-07-11 11:51:06
阅读次数:
350
一、定义: MQ是MessageQueue,消息队列的简称(是流行的开源消息队列系统,利用erlang语言开发)。MQ是一种应用程序对应用程序的通信方法。应用程序通过读写入队和出队的消息来通信,无需专用连接来链接它们。 消息传递是程序之间通过在消息中发送数据进行通信,而不是通过直接调用彼此来通信,一 ...
ι 版权声明:本文为博主原创文章,未经博主允许不得转载。 先看Handler的定义: 由源码中对Handler的定义以及注释,我们可知,Handler主要就是用来发送和处理消息的。每一个Handler的实例都和一个线程以及该线程的MessageQueue相关联。Hadnler主要有2个作用:①在未来 ...
分类:
移动开发 时间:
2017-07-01 20:05:14
阅读次数:
204
1、首先Looper.prepare()在本线程中保存一个Looper实例,然后该实例中保存一个MessageQueue对象;因为Looper.prepare()在一个线程中只能调用一次,所以MessageQueue在一个线程中只会存在一个。2、Looper.loop()会让当前线程进入一个无限循环 ...
分类:
移动开发 时间:
2017-06-24 11:25:09
阅读次数:
216
解决方法: MessageQueue.Formatter 设置Formatter 属性和Message.Formatter 设置属性,一个是在队列中设置,一个是在消息中设置 MessageQueue.Formatter和Message.Formatter 都要设置还要设置的一模一样 否则就会报异常, ...
分类:
其他好文 时间:
2017-06-19 01:19:11
阅读次数:
618
ι 版权声明:本文为博主原创文章,未经博主允许不得转载。 Looper在Android的消息机制中就是用来进行消息循环的。它会不停地循环,去MessageQueue中查看是否有新消息,如果有消息就立刻处理该消息,否则就一直等待。 Looper中有一个属性: 这也就解释了,前面我们所说的我们可以通过T ...
分类:
移动开发 时间:
2017-06-18 20:01:37
阅读次数:
237
ι 版权声明:本文为博主原创文章,未经博主允许不得转载。 MessageQueue,主要包含2个操作:插入和读取。读取操作会伴随着删除操作,插入和读取对应的方法分别为enqueueMessage和next,其中enqueueMessage的作用是往消息队列中插入一条消息,而next的作用是从消息队列 ...
分类:
移动开发 时间:
2017-06-18 19:24:51
阅读次数:
188
1 /**android的消息处理有三个核心类:Looper,Handler和Message。其实还有一个MessageQueue(消息队列), 2 * 但是MessageQueue被封装到Looper里面了。 3 * 4 * Looper 5 * 6 * Looper 循环着。被设计用来使一个普通 ...
分类:
移动开发 时间:
2017-05-23 19:47:52
阅读次数:
359
本文从源码的角度来分析Handle如何实现的。 首先我们得知道Handler,Looper,Message Queue三者之间的关系 - Handler封装了消息的发送,也负责接收消。内部会跟Looper关联。 - Looper 消息封装的载,内部包含了MessageQueue,负责从Message ...
分类:
其他好文 时间:
2017-05-22 16:37:14
阅读次数:
261
一、多线程1)本章首先介绍了安卓的多线程编程,说明在子线程中如果要修改UI,必须通过Handler, Message, MessageQueue, Looper来实现,但是这样毕竟太麻烦了。 2)然后紧接着就给出了AsyncTask,通过继承这个类,就可以在他的里面直接修改UI元素,方便很多;二、服... ...
分类:
移动开发 时间:
2017-05-20 23:40:15
阅读次数:
281