今晚来整理一下消息队列,消息队列是一条由消息连接而成的链表,存在内核里面,通过消息对了的引用标识符来访问,每个消息队列都有一个msqid_ds结构与之对应,这个结构保存了消息队列的当前状态参数,这个结构的定义如下: 1 steuct msqid_ds 2 { 3 struct ipc_perm .....
分类:
其他好文 时间:
2015-01-14 22:38:16
阅读次数:
237
Android中的Looper类,是用来封装消息循环和消息队列的一个类,用于在android线程中进行消息处理。handler事实上能够看做是一个工具类,用来向消息队列中插入消息的。 (1) Looper类用来为一个线程开启一个消息循环。 默认情况下android中新诞生的线程是没有开启消息循环.....
分类:
移动开发 时间:
2015-01-14 17:49:40
阅读次数:
197
在调用OSQQuery时,需要这样定义:OS_Q_DATA qdata;OSQQuery(q1, &qdata);不能这样定义:OS_Q_DATA *qdata;OSQQuery(q1, qdata);会触发HardFault_Handler()中断,原因就是没有申请空间。
分类:
其他好文 时间:
2015-01-14 15:32:05
阅读次数:
289
这几天研究了一下 disruptor .Net版,由于.Net版跟进不及时,网上只有 v2.10 版。没仔细研究,但可以肯定的是跟最新的Java版 disruptor 3.30 是有不少区别的。我也用这个 2.10 的.Net版本写了跟我们的问题相似的测试程序,得到的结果跟 Java 版的 disr...
分类:
其他好文 时间:
2015-01-14 13:59:44
阅读次数:
336
andriod提供了Handler 和 Looper 来满足线程间的通信。Handler先进先出原则。Looper类用来管理特定线程内对象之间的消息交换(MessageExchange)。1)Looper: 一个线程可以产生一个Looper对象,由它来管理此线程里的MessageQueue(消息队列...
分类:
其他好文 时间:
2015-01-14 12:38:17
阅读次数:
129
1、消息钩子的概念: Windows应用程序是基于消息驱动的,不论什么线程仅仅要注冊窗体类都会有一个消息队列用于接收用户输入的消息和系统消息。为了拦截消息,Windows提出了钩子的概念。钩子(Hook)是Windows消息处理机制中的一个监视点,钩子提供一个回调函数。当在某个程序中安装钩子后,它将...
apache kafka中国社区QQ群:162272557apache kafka参考http://kafka.apache.org/documentation.html消息队列分类: 点对点:消息生产者生产消息发送到queue中,然后消息消费者从queue中取出并且消费消息。这里要注意:消息被消费...
分类:
Web程序 时间:
2015-01-09 12:30:22
阅读次数:
184
这几天学习了一下MSMQ,虽然不能说非常深入的了解其机制与实际用法(具体项目的实现),但也要给自己的学习做个总结。学习心得如下:一、MSMQ即微软消息队列。用于程序之间的异步消息通信,主要的机制就是在某种情况将消息以队列的形式存于公共的空间,又在特定条件下进行相应的处理。二、MSMQ的使用: 1、....
分类:
其他好文 时间:
2015-01-09 01:34:08
阅读次数:
238
上一篇分析了 Sinclair 的 q3.h 的原理,以及根据网友 korall 的提醒,我们可以看到,q3.h 的 push() 前半部分领号的过程是 lock-free 的,这里 lock-free(无锁) 的定义是指假如有一个线程在领号的过程中被无限休眠或崩溃(假设存在崩溃的可能性),也不会造...
分类:
其他好文 时间:
2015-01-08 14:59:25
阅读次数:
255
rabbitmq学习9:使用spring-amqp发送消息及同步接收消息 通过对spring-amqp看重要类的认识,下面来通过spring-amqp的发送消息及同步接收消息是如何实现的。有兴趣的朋友 可以去spring-amqp官网下载例子。 先来看看HelloWorldConfigu...
分类:
其他好文 时间:
2015-01-07 23:25:38
阅读次数:
123