EventLoop事件循环
- EventLoop相当于Reactor模型的Reactor反应堆的角色;
- Poller和EPollPoller相当于Demultiplex多路事件分发器,就是epoll的所有操作;
最起码得有一个线程来支撑。
1、EventLoop.h
成员变量:
- ChannelList: EventLoop中管理了很多Channel和一个Poller;
- looping_: 事件循环是正常运行还是退出循环(atomic,我们使用C++11CAS实现的)
- quit_: 客户端全部断开连接以后,服务器也需要退出事件循环,用来标识退出loop循环
- callingPendingFunctors_:标识当前loop是否有需要执行的回调操作