2017年9月18日
摘要:
0MQ不是Message Broker。
阅读全文
posted @ 2017-09-18 14:24
bbqz007
阅读(573)
推荐(0)
2017年9月15日
摘要:
底层IO事件,以及借用socket poller的上层0MQ socket事件。 先来看用于底层和上层的两种poller。 这是用于底层io事件的poller_t,每个socket_base_t都关联到一个poller_t,这个poller_t运行在io_thread_t线程上。 这是运行在0MQ
阅读全文
posted @ 2017-09-15 14:16
bbqz007
阅读(1638)
推荐(0)
2017年9月14日
摘要:
1. c接口 1.1 创建conn - amqp_new_connection() 1.2 从conn中新建一个socket - amqp_tcp_socket_new(conn) 1.3 打开这个socket - amqp_socket_open(socket, hostname, port) 1
阅读全文
posted @ 2017-09-14 19:09
bbqz007
阅读(590)
推荐(0)
摘要:
理清内部队列结构,数据在内部交换去何
阅读全文
posted @ 2017-09-14 15:34
bbqz007
阅读(641)
推荐(0)
摘要:
1. 先结合RabbitMQ Tutorials,弄清0MQ socket的各种类型。 1.1. 0MQ PAIR 对应 RabbitMQ Tutorials的 "Hello world" 例子 1.2. 0MQ PUSH - PULL 对应 RabbitMQ Tutorials 的 Work qu
阅读全文
posted @ 2017-09-14 11:41
bbqz007
阅读(322)
推荐(0)
2017年9月1日
摘要:
LF模式是个坑,一个小小的失误就可能使你的网络处理瘫痪,Ice就很好地展现了出来,换句话说,Ice中间件或是LF模式就是一个坑,如果你一不小心。 LF模式的官方论文中,论述了此模式用于高性能网络并发模式,使用的是系统的隐式队列,也就是Reactor复用多路IO,(如果是select的话,还是会将事件
阅读全文
posted @ 2017-09-01 11:57
bbqz007
阅读(1180)
推荐(0)
2017年8月30日
摘要:
arm调试过程,如果抛一个SIGSEGV,地址在 0xe7f001f0 附近,原因居然是因为我在调试。当我使用n指令跳到下一行代码时,往往变成了continue指令一样地执行。还不确定地抛出SIGSEGV(addr:0xe7f00XXX),使用程序直接崩溃不能继续调试下去。查看寄存器发现的确有某个r
阅读全文
posted @ 2017-08-30 16:52
bbqz007
阅读(551)
推荐(0)
2017年8月18日
摘要:
ctags+vim还是太累了,还是使用IDE好,尤其是c++模板。KDevelop就不错,符号智能推导以及cmake项目管理和配置,还是挺好用的。 Android端的ndk开发使用Android Studio,服务端开发就用KDevelop,谁让我用了Ice。 KDevelop不用编译,不用yum或
阅读全文
posted @ 2017-08-18 21:07
bbqz007
阅读(3915)
推荐(0)
2017年8月16日
摘要:
如果你使用gcc对一部分模块进行了GNUMake的编译,这些编译出动态库使用在Gradle编译框架下的项目。那么就有可能出现题目中的情况,使用不同的C++支持库的模块混合开发时,引发异常展开不正常。 当我们使用GNUMake编译的项目进行移植编译时,都会使用Ndk的toolchains下对应的gcc
阅读全文
posted @ 2017-08-16 11:59
bbqz007
阅读(798)
推荐(0)
2017年6月21日
摘要:
eventpoll是一种文件,它实现了一种机制利用一条rdllist队列来避免阻塞地进行poll。eventpoll归根到底还是在使用poll。而ET比LT高效,并不在于是否使用了poll,更不能说是因为LT使用了poll。通过阅读源代码就可以清楚看到对 ET 和 LT 处理的区别仅有一处,其余都相
阅读全文
posted @ 2017-06-21 17:52
bbqz007
阅读(6037)
推荐(4)