https://blog.youkuaiyun.com/wanbf123/article/details/78062802
https://juejin.im/post/6844903636422623240
https://segmentfault.com/a/1190000002715832
https://www.zhihu.com/question/26943938/answer/68773398
0. 准备知识
一般地,IO多路复用机制都依赖于一个事件多路分离器(Event Demultiplexer)以及事件处理器(Event Handler):
- 多路分离器:分离器用于将来自事件源的I/O事件分离出来,并分发到对应的事件处理器中;
- 事件处理器:包括read/write事件处理器,也就是负责处理IO的线程或者是回调函数(在异步中)。
1. Reactor模式
- 事件分离器负责等待文件描述符或socket为读写操作准备就绪,然后将就绪事件传递给对应的处理器,最后由处理器负责完成实际