各种IO

I/O多路复用

2017-06-18  本文已影响27人  jdzhangxin

背景


IO多路复用

I/O多路复用:多路网络连接复用一个IO线程。

使用一个线程来检查I/O流(Socket)的就绪状态。通过记录跟踪每个I/O流(Socket)的状态,来同时管理多个I/O流 。

MUX=multiplexing

多个Socket复用功能是在内核驱动实现的。

IO多路复用

在处理1000个连接时,只需要1个线程监控就绪状态,就绪的连接开一个线程处理就可以了,这样需要的线程数大大减少,减少了内存开销和上下文切换的CPU开销。

I/O ready 事件的通知是以一个监听集合为单位完成的。multiplex 的是监听集合,并非 I/O 本身。

select编码流程

上一篇 下一篇

猜你喜欢

热点阅读