Muduo网络库剖析
muduo 是一个基于 Reactor 模式的 c++网络库,它采用非阻塞 IO 模型,基于事件驱动和回调,原生支持多核多线程。源码不算多,但是使用了多处回调,让很多程序员朋友不太好理解,索性就写几篇博客分析下muduo这款网络库的源码。
苏州-青蛙
>- -<
。
展开
-
Muduo(C++11版本) 源码剖析(六)———TcpServer和Acceptor设计
TcpServer主要功能是管理新的连接到来时创建的TcpConnection,是直接提供给用户使用的类,生命周期由用户控制。Acceptor是创建在TcpServer内部的指针,内部会有一个Channel来专门处理新连接到来事件,新连接到来会回调给TcpServer的newconnection来创建新连接,其实之前几期内部的机制都算是讲完了,如果能够理解,这两个类基本看下就能知道作用了。TcpServer成员变量: private: EventLoop*原创 2020-08-17 16:18:26 · 612 阅读 · 0 评论 -
Muduo(C++11版本) 源码剖析(五)———TcpConnection设计
Rt原创 2020-08-17 14:51:55 · 575 阅读 · 0 评论 -
Muduo(C++11版本) 源码剖析(四)———Channel设计
RT原创 2020-08-15 13:52:28 · 38137 阅读 · 0 评论 -
Muduo(C++11版本) 源码剖析(三)———EventLoop设计
1原创 2020-08-14 18:17:13 · 1338 阅读 · 0 评论 -
Muduo(C++11版本) 源码剖析(二)———EventLoopThread+EventLoopThreadPool设计
213原创 2020-08-14 10:17:37 · 1163 阅读 · 1 评论 -
Muduo(C++11版本) 源码剖析(一)———总体架构
前言: 目前虽然一直是C++/Qt偏客户端的方向,但是研究了一段时间c++高性能服务器的一些架构设计,正好学习了一款flamingo这一款开源即时通讯软件,里面的网络层是用c++11改写的原来boost版的muduo,索性就写几篇博客分析下muduo这款网络库的源码,其实已经有不少人分析过该库,我在这里仅仅谈我的个人对该库设计、用法的一些理解 ,不对或者不准确的地方还请指出,有一些地方会直接引用陈硕老师的《c++linux多线程服务端编程》的原图或者原话。涉及到的关键类: ..原创 2020-08-13 15:27:24 · 3528 阅读 · 1 评论