如何透彻理解Linux的epoll模型 (可有好的英文资料)?
实际现象
看了很多中文博客, 但是没有收获, 感觉都在挠痒痒
搜索了英文资料, 没有搜索到很好的( 也是挠痒痒 )
感觉最好的维基百科的资料, 但是仍然无法助我透彻理解
预期现象
能彻底搞懂epoll模型
从原理, 从全局去弄懂epoll
上下文环境
产品版本:
操作系统: Linux
epoll + select
如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。
绑定邮箱获取回复消息
由于您还没有绑定你的真实邮箱,如果其他用户或者作者回复了您的评论,将不能在第一时间通知您!
发布评论
评论(2)
gitbook上有本书叫libevent深入浅出,里面谈到了epoll,觉得讲的还挺好的
楼主的问题其实很难简单说明白,我先说下我的观点,可能太基础,权当抛砖引玉:
要深入理解eoll,我觉得是建立在这样的基础之上的:
1:理解IO多路复用机制。我曾经尝试着回答过这个问题 I/O多路复用的应用场合疑问? 就像答案中说到,这只是一种高效处理socket连接的策略。
2:为什么要使用IO多路复用机制?也就是传统多进程/多线程模型的缺点是什么?怎么理解IO多路复用(select)?
3:这样的话其实EPOLL也只是帮我们解决了管理多个socket的问题,那用epoll管理有哪些特点呢?
那对于这些特点,就分开再去看了,把握了整体的原理,局部的细节如果到了看源码的地步也可以去看源码。