> 文章列表 > 4.25、IO多路复用简介

4.25、IO多路复用简介

4.25、IO多路复用简介

4.25、IO多路复用简介

  • 1. I/O多路复用(I/O多路转接)
    • ①阻塞等待(BIO模型)
    • ②非阻塞,忙轮询(NIO模型)
    • ③IO多路转接技术(select/poll)
    • ④IO多路转接技术(epoll)

1. I/O多路复用(I/O多路转接)

  • I/O 多路复用使得程序能同时监听多个文件描述符,能够提高程序的性能,Linux 下实现 I/O 多路复用的系统调用主要有 selectpollepoll

①阻塞等待(BIO模型)

  • 进程堵塞,只能一个一个进行,并且是只有当客户端传达数据时才可以继续。多进程和多线程可解决阻塞问题
    4.25、IO多路复用简介
    4.25、IO多路复用简介

②非阻塞,忙轮询(NIO模型)

  • 每次都要进程多次查询,如果客户端没有进行操作,则会进行很多次无用功
    4.25、IO多路复用简介
    4.25、IO多路复用简介

③IO多路转接技术(select/poll)

4.25、IO多路复用简介

④IO多路转接技术(epoll)

4.25、IO多路复用简介