Skip to content
On this page

IO多路复用


标签:linux/conc  

IO 多路复用

  1. 进程中如果同时需要处理多路输入输出流,在使用单进程单线程的情况下,同时处理多个输入输出请求
  2. 在无法实现多线程,可以选择使用 IO 多路复用
  3. 由于不需要创建新的进程和线程,减少系统的资源开销,减少上下文切换的次数
    • 上下文:运行上一个进程所需要的所有资源
    • 上下文切换:从 A 进程切换到 B 进程,A 进程的资源要完全替换成 B 进程的,是一个耗时操作
  4. 允许同时对多个 IO 进行操作,内核一旦发现进程执行一个或者多个 IO 事件,会通知该进程

常见的 IO 多路复用机制:

  1. select
  2. poll
  3. epoll
  4. kqueue

Last updated: