Looper用于封装了android线程中的消息循环,默认情况下一个线程是不存在消息循环(message loop)的,需要调用Looper.prepare()来给线程创建一个消息循环,调用Looper.loop()来使消息循环起作用,从消息队列里取 消息,处理消息。注:写在Looper.loop(...
分类:
移动开发 时间:
2014-11-05 12:53:19
阅读次数:
169
共享内存和消息队列也是进程间的通信方式。共享内存,(和信号量的操作类似)#include1、int shmget(key_t key,size_t size,int shmflg);作用:新建一块内存或者返回已建好的内存参数:key,用于表示开辟一段内存,各进程通过这个标志访问同一块内存 size....
分类:
数据库 时间:
2014-11-04 22:22:23
阅读次数:
308
创建线程消息队列Android应用程序的消息队列是使用一个MessageQueue对象来描述的,它可以通过调用Looper类的静态成员函数prepareMainLooper或者prepare来创建,其中,前者用来为应用程序的主线程创建消息队列;而后者用来为应用程序的其它子线程创建消息队列。在分析An...
分类:
移动开发 时间:
2014-11-03 20:53:28
阅读次数:
371
Message,MessageQueue,Looper,Handler详解一、几个关键概念1、MessageQueue:是一种数据结构,见名知义,就是一个消息队列,存放消息的地方。每一个线程最多只可以拥有一个MessageQueue数据结构。创建一个线程的时候,并不会自动创建其MessageQueu...
分类:
其他好文 时间:
2014-11-02 08:12:44
阅读次数:
164
1、stl由哪些东西组成,stl的容器有哪些,各个容器是如何分配内存的 stl由容器,算法、迭代器、分配空间的分配器、容器适配器 2、怎样让一个类只能在堆上面分配内存; 3、线程同步的方式 互斥对象,时间对象,消息队列, 4、类的静态成员函数有什么用 基于:它跟类的实例无关,只跟类有关,不需要thi...
分类:
其他好文 时间:
2014-11-02 00:34:52
阅读次数:
250
rabbitMQ是一个在AMQP协议标准基础上完整的,可服用的企业消息系统。他遵循Mozilla Public License开源协议。采用 Erlang 实现的工业级的消息队列(MQ)服务器。 RabbitMQ的官方站:http://www.rabbitmq.com/ AMQP(高级消息队列协议)...
android 的service和activity是运行在UI主线程的。在android线程中,只有主线程即UI线程有自己的默认的消息队列。子线程需要创建自己的消息队列,并把消息发给队列,并循环起来,发给handler处理。
1、Looper.prepare();给子线程创建消息队列。
2、Looper.loop();把消息放入消息队列并循环起来。
如下是一个通过activity的oncre...
分类:
移动开发 时间:
2014-10-31 15:51:01
阅读次数:
186
原理: 其基本处理模型是单线程调度的任务队列模型,Timer不停地接受调度任务,所有任务接受Timer调度后加入TaskQueue,TimerThread不停地去TaskQueue中取任务来执行. 从图上不难看出,这就是生产者--消费者模型的一种特例:多生产者,单消费者模型。 此种消息队列实现方式在...
分类:
移动开发 时间:
2014-10-31 07:40:37
阅读次数:
222
1、P2P模型 在P2P模型中,有下列概念:消息队列(Queue)、发送者(Sender)、接收者(Receiver)。每个消息都被发送到一个特定的队列,接收者从队列中获取消息。队列保留着消息,直到它们被消费或超时。 ? 每个消息只...
分类:
Web程序 时间:
2014-10-30 17:27:17
阅读次数:
211