多应用+插件架构,代码干净,二开方便,首家独创一键云编译技术,文档视频完善,免费商用码云13.8K 广告
- I/O多路复用有很多种实现。在linux上,2.4内核前主要是select和poll - https://zhuanlan.zhihu.com/p/64746509 输入输出源:可以是文件(file)、网络(socket)、进程间的管道(pipe),因在 Linux 中 “一切皆文件”,所以都是用文件描述符(fd)来表示 可读事件:当 fd 关联的内核缓冲区非空有数据可读时,则触发可读事件; 可写事件:当 fd 关联的内核缓冲区不满有空闲空间可写时,则触发可写事件; 通知机制:当事件发生时,主动通知; 轮询机制:循环检查是否有事件发生,是通知机制的反面; 再来解读 epoll 机制:当 fd 关联的内核缓冲区非空时,发出可读信号;当缓冲区不满时,发出 可写信号。