多路转接--select /poll引言linux中创建的多路转接的方式有三种,select ,poll ,epoll;多路转接的核心思想是一次等待多个文件描述符,也就是socket;内核对多路转接的大量fd的管理使用的是红黑树,epoll 内核用红黑树管理所有监听文件描述符,依靠平衡特性实现快速增删查;网卡数据触发硬件中断后,内核通过红黑树精准定位对应 fd,放入就绪队列,最后唤醒用户进程处理事件。 内核用 epoll 监听哪些套接字就绪,拿到就绪事件后,扔给线程池去读写业务数据,监听靠内核,干活靠线程池。