muduo网络库
文章平均质量分 97
详细介绍muduo库的原理,讲解每一个类的主要作用
weixin_45807759
这个作者很懒,什么都没留下…
展开
-
[muduo网络库]——muduo库Socket类,Acceptor类,Connector类
Socket类实际上就是封装套接字socket fd,请参考游双《Linux高性能服务器编程》第五章用于接受TCP连接, 它是TcpServer的成员,生命期由后者控制。Acceptor类用于创建套接字socket,接受新客户端连接并分发连接给SubReactor(SubEventLoop)用于发起TCP连接, 它是TcpClient的成员,生命期由后者控制。它负责主动发起连接,不负责创建socket,只负责连接的建立,和Acceptor类恰好相反。Connector。原创 2024-09-16 23:05:09 · 1146 阅读 · 0 评论 -
[Muduo网络库]:梳理Muduo库核心代码
Muduo是陈硕个人开发的TCP网络编程,支持Reactor模型。陈硕在《Linux多线程服务器编程》中提到他心中理想的网络库的样子:1.线程安全,原生支持多核多线程。2.不考虑可移植性,不支持跨平台,只支持Linux,不支持Windows。3.主要支持x86-64,兼顾IA32.(实际上muduo也可以运行在ARM上)4.不支持UDP,只支持TCP。5.不支持IPV6,只支持IPV4。6.不考虑公网,只考虑局域网(实际上muduo也可以用在广域网中)原创 2024-09-15 17:01:06 · 1032 阅读 · 0 评论 -
[Muduo网络库]:三大核心库Channel类、Poller/EpollPoller类以及EventLoop类
除了循环,什么都没做的loop()",这句话的意思并非是loop()只是一个空循环,而是它的主要功能并未通过自身定义的函数实现。loop函数中主要通过调用一次Poller::poll方法它就能给你返回事件监听器的监听结果,然后调用这些Channel里面保管的不同类型事件的处理函数。loop()函数最主要的作用是实现循环,负责驱动“循环”的重要模块。Channel类其实相当于一个文件描述符的保姆!2.2.1 Channel类概述-我在地铁站里吃闸机。原创 2024-09-16 16:46:37 · 835 阅读 · 0 评论