Select和epoll的区别

谈谈对I/O多路复用的理解,Select和Epoll的区别
首先I/O多路复用是用线程监听多个文件描述符,或连接事件,一旦发现一个或多个就绪的文件描述符便触发阻塞唤醒,让应用程序直接读写。
①Select基于轮询,遍历所有文件描述符,而epoll只遍历就绪的文件描述符,要比select快很多
②select监听集合受操作系统限制,而epoll不受限制
③在处理大量文件描述符时,随着文件描述符的增多,select性能逐渐下降,而epoll性能保持稳定
④在多线程场景下,select需将监听集合传递给每个线程,而epoll在一个线程中处理多个文件描述符,省下了线程切换和数据复制的开销。
总的来说epoll比select好,但在文件描述符较少和需要多平台支持的场景下用select更好。
全部评论
最后总结咋select更好了?
点赞
送花
回复
分享
发布于 2023-09-16 09:30 广东
兄弟,试试光伏电池行业~
点赞
送花
回复
分享
发布于 2023-10-06 12:18 浙江
滴滴
校招火热招聘中
官网直投

相关推荐

6 34 评论
分享
牛客网
牛客企业服务