随笔-130  评论-12  文章-0 
  2017年10月23日
摘要: 早些时间用ndk编译带main入口函数的动态库,测试可运行。今天要作它用时,发现在这个入口函数并没有传入正确的参数。 hello.cpp有main函数,用ndk分别编译成可执行文件和动态库文件,使两者都可以在android手机下运行。 左侧是由编译出的可执行文件objdump出来的反汇编, 右侧是远阅读全文
posted @ 2017-10-23 15:40 bbqz007 阅读(4) 评论(0) 编辑
  2017年10月13日
摘要: 引用计数进行管理资源,我们最熟悉的就是智能指针。在c++11之前,我们的对象都从一个引用计数管理资源的类继承,这个类有一个引用计数器,两个配对的操作addref和delref,当delref将引用计数器减为0时,会自动调用delete。这种机制要求对象必须实例在堆上,也就是new创建。当决定继承一个阅读全文
posted @ 2017-10-13 17:16 bbqz007 阅读(4) 评论(0) 编辑
摘要: 不作文,只记要点。 1.Ice::Application的程序框架默认对SIGHUP, SIGINT, SIGTERM进行处理。目的就是捕捉Ctrl+C发出信号有序地结束程序。这个功能扰乱了我们使用gdb进行调试。 1.1 Ice::Application通过CtrlCHandler类,使用pthr阅读全文
posted @ 2017-10-13 14:42 bbqz007 阅读(3) 评论(0) 编辑
  2017年10月12日
摘要: mongodb 3.x存储二进制数据并不是以base64的方式,虽然在mongo客户端的查询结果以base64方式显示,请放心使用。下面来分析存储文件的存储内容。阅读全文
posted @ 2017-10-12 11:06 bbqz007 阅读(8) 评论(0) 编辑
  2017年9月18日
摘要: Pieter Hintjens 的并发定律 e=m(c*c)。阅读全文
posted @ 2017-09-18 15:06 bbqz007 阅读(3) 评论(0) 编辑
摘要: 0MQ不是Message Broker。阅读全文
posted @ 2017-09-18 14:24 bbqz007 阅读(4) 评论(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 阅读(2) 评论(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 阅读(1) 评论(0) 编辑
摘要: 理清内部队列结构,数据在内部交换去何阅读全文
posted @ 2017-09-14 15:34 bbqz007 阅读(13) 评论(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 阅读(4) 评论(0) 编辑