Muduo源码笔记系列:
muduo源码阅读笔记(2、对C语言原生的线程安全以及同步的API的封装)
muduo源码阅读笔记(6、ExevntLoop和Thread)
muduo源码阅读笔记(7、EventLoopThreadPool)
前言
本章涉及的文件有:
TcpServer.h/cc:一个主从Reactor模型的TcpServer,主EventLoop接收连接,并且将连接sock fd负载均衡分发给一个IOLoop。
Acceptor.h/cc:一个监听套接字的包装器,内部创建了一个Channel管理连接套接字的回调。
Socket.h/cc:封装原生socket,提供绑定、监听、接受连接、设置socket属性等接口。
SocketsOps.h/cc:Socket.h/cc接口的底层实现,在创建套接字(::socket()/::accept())时,会将socketfd设置为非阻塞。
InetAddress.h/cc:对sockaddr_in/sockaddr_in6网络地址进行封装,使其更方便使用。
本章重点集中在1、2,对于3、4、5,见名知意即可,感兴趣的读者,可以自行深入阅读。
Acceptor的实现
提供的接口: