5种io模型摘要
Posted silyvin
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了5种io模型摘要相关的知识,希望对你有一定的参考价值。
https://www.jianshu.com/p/db5da880154a
I/O多路复用,I/O就是指的我们网络I/O,多路指多个TCP连接(或多个Channel),复用指复用一个或少量线程。串起来理解就是很多个网络I/O复用一个或少量的线程来处理这些连接。
理解了select就抓住了I/O多路复用的精髓,对应的操作系统中调用的则是系统的select函数,该函数会等待多个I/O事件(比如读就绪,写)的任何一个发生,并且只要有一个网络事件发生,select线程就会执行。
阻塞式I/O和I/O复用,两个阶段都阻塞,那区别在哪里呢?就在于第三节讲述的Selector,虽然第一阶段都是阻塞,但是阻塞式I/O如果要接收更多的连接,就必须创建更多的线程。I/O复用模式下在第一个阶段大量的连接统统都可以过来直接注册到Selector复用器上面,同时只要单个或者少量的线程来循环处理这些连接事件就可以了,一旦达到“就绪”的条件,就可以立即执行真正的I/O操作。这就是I/O复用与传统的阻塞式I/O最大的不同。也正是I/O复用的精髓所在。
避免连接多了之后线程切换巨大开销
https://blog.csdn.net/woaixiaopangniu521/article/details/70279143
IO多路复用模型使用了Reactor设计模式实现了这一机制。
异步IO模型使用了Proactor设计模式实现了这一机制。
https://www.aliyun.com/jiaocheng/792562.html
这篇文章阐述了同步阻塞的区别
以上是关于5种io模型摘要的主要内容,如果未能解决你的问题,请参考以下文章