随笔分类 - muduo那些事
摘要:所谓消息分发(muduo 中,就是接收到buffer之后,额,或者说是 protobuf),在简单的程序设计里面的话,估计就是 type-switch 了,但是这样的话,肯定就不好扩展维护啦。最后的方法就是,可以根据 type-name 自动去调用相应的方法。typedef boost::funct...
阅读全文
摘要:muduo 中,大量是用 smart point 省掉自己管理内存.下面开着源码参看。question 1:EventLoop 的生命周期answer 1: 建立在栈中,离开范围以后,自动释放。void EventLoopThread::threadFunc(){ EventLoop loop;/...
阅读全文
摘要:TcpClient 在两种情况下会自动重连。1. Connector::connect 返回的 error 中需要重连;2. TcpClient::removeConnection 中判断需要重连;最终都会调用 Connector::retryvoid Connector::retry(int so...
阅读全文
摘要:使用\muduo\examples\asio\chat\server.cc 作例子首先需要知道:EventLoop:一个事件分发器类,拥有 Poller 对象,事件处理函数是 loop(),在这里捕获注册的 Channel 事件,并调用相应的回调函数。while (!quit_) { ......
阅读全文
摘要:方案0:accept+read/write,阻塞,一次服务一个客户。方案1:accept+fork,阻塞,采用多进程,长连接,并发性低,开销高,process-per-connection方案2:accept+thread,阻塞,采用多线程,长连接,并发性中,开销中,多连接互通,thread-per...
阅读全文
摘要:源文件tar包的下载地址:http://code.google.com/p/muduo/downloads/list ,此处以muduo-0.9.7-beta.tar 为例。系统版本:Linux ubuntu 3.13.0-24-generic #46-Ubuntu1.需要编译 boost 库--去...
阅读全文