什么是i/0多路复用技术?

版权声明:本文为博主原创文章,未经博主允许不得转载。 https://blog.csdn.net/ahjxhy2010/article/details/80422583

I/O 多路复用技术是指利用单个线程处理多个网络 I/O,我们常说的 selectepoll 就是用来轮询所有 socket 的函数。比如 Apache 采用了前者,而 Nginx 和 Node.js 使用了后者,区别在于后者效率更高由于 I/O 多路复用实际上还是单线程的轮询,因此它也是一种非阻塞 I/O 的方案。

异步 I/O 是最理想的 I/O 模型,然而可惜的是真正的异步 I/O 并不存在。 Linux 上的 AIO 通过信号和回调来传递数据,但是存在缺陷。现有的 libeio 以及 Windows 上的 IOCP,本质上都是利用线程池与阻塞 I/O 来模拟异步 I/O。


链接地址:https://juejin.im/post/57b54f151532bc0063ebfe31
阅读更多
想对作者说点什么?

博主推荐

换一批

没有更多推荐了,返回首页