操作系统 同步阻塞IO 同步非阻塞IO 多路复用IO
同步阻塞IO:一个线程阻塞的读取IO
同步非阻塞IO:一个线程轮询多个连接
IO多路复用:一个线程把多个连接交给内核,内核去轮询。
select:轮询+数组存放注册事件集合(socket描述符)
poll:轮询+链表存放注册事件集合(socket描述符)
epoll:事件驱动机制,每个事件上注册有回调函数,当网卡接收到数据时会回调该函数,同时将该fd的引用放入rdlist就绪列表中。 红黑树+双向链表,红黑树存放注册事件,双向链表存放有IO的注册事件。
参考:https://blog.csdn.net/fengyuyeguirenenen/article/details/124234675

浙公网安备 33010602011771号