1、Reactor组成部分
1)描述符(套接字或者文件描述符),用于识别每一个事件
2)同步事件分离器,是一个函数,用来等待一个或者多个事件的发生(比如select、epoll)
3)事件处理接口,一个或者多个模板函数组成的接口
4)具体事件处理器, 事件处理接口的实现
5)Reactor管理器,定义了一些接口,用于应用程序控制事件调度,以及应用程序注册、删除事件处理器和相关的描述符
整个处理流程:
先使用同步事件分离器来等待事件的到来,然后一旦事件发生,分离每一个事件调用事件处理接口,调用具体的事件处理器来对事件进行处理。如下所示