IO模型

参考:1. 看一遍就理解:IO模型详解

一、BIO(阻塞IO)

  缺点:性能低。

二、NIO(非阻塞IO)

  优点:相对BIO性能提升。缺点:频繁的轮询,会消耗CPU资源。

三、多路复用IO模型 同步阻塞

  IO复用模型核心思路:系统给我们提供一类函数(如select、poll、epoll函数),它们可以同时监控多个fd的操作,

  任何一个返回内核数据就绪,应用进程再发起recvfrom系统调用。

  1.seclet 底层实现:数组

     缺点:存在监听IO连接数限制。

  2.poll 底层实现:链表

     优点:连接数不受限。 缺点:性能低。

  3.epoll 底层实现:双向链表+红黑树  事件驱动

 采用监听事件回调的机制,代替遍历文件描述符。

 优点:连接数不受限且性能高。

   4.seclet、poll与epoll的区别:

四、信号驱动IO模型

五、AIO(异步IO模型)

六、阻塞、非阻塞、同步、异步IO划分

 

posted @ 2022-09-05 00:14  遇见神龙  阅读(72)  评论(0编辑  收藏  举报