总结

IO多路复用

1. 什么是IO多路复用? IO多路复用到底带来什么好处?

在没有多进程或者多线程的情况下,通过一个进程(主线程)内完成多个客户端socket的io处理

2. select是如何实现的?它的问题有哪些?

select遗留问题

  • 监控client socket受限
  • 内部使用遍历的方式检查可读写的client socket,在在大量client socket时效率很低

3. poll是什么?poll解决了什么?poll遗留了什么问题?

poll其实和select差不多,poll唯一解决的问题就是client socket的受限问题,获取读写socket时依旧是靠遍历,所以在大量client socket时效率很低的问题还是存在的

4. epoll是什么? epoll是如何解决select和poll的遗留问题?

epoll是poll的升级版,epoll通过事件通知的机制来获取可读写的client socket

5. 什么是事件通知?

6. 水平触发(LT)、边缘触发(ET)? LT和ET的各自的问题在哪? 各自适应什么场景?

参考 & 更多

I/O多路复用技术(multiplexing)是什么? - 知乎用户的回答 - 知乎 https://www.zhihu.com/question/28594409/answer/52835876

results matching ""

    No results matching ""