I/O多路复用:监视多个文件描述符(优势),一旦某个描述符就绪,通知程序进行相应处理。Select、poll、epoll本质上都是同步IO(Linux)。
Linux三种多路复用机制:
1.select
Select:需要三个文件描述符集合,可以向文件描述符集合中添加感兴趣的事件,select复用特点如下:
1.文件描述符个数有限制1024 --数据结构:位图
2.每次调用都需要重新将3个fd集合从用户态拷贝到内核态
3.内核需要遍历所有
I/O多路复用:监视多个文件描述符(优势),一旦某个描述符就绪,通知程序进行相应处理。Select、poll、epoll本质上都是同步IO(Linux)。
Select:需要三个文件描述符集合,可以向文件描述符集合中添加感兴趣的事件,select复用特点如下:
1.文件描述符个数有限制1024 --数据结构:位图
2.每次调用都需要重新将3个fd集合从用户态拷贝到内核态
3.内核需要遍历所有