查看原文
其他

四张图,读懂 BIO、NIO、AIO、多路复用 IO 的区别

点击关注👉 民工哥技术之路 2022-12-31

点击关注公众号,回复“1024”获取2TB学习资源!

学习之前,我们先来了解一下IO模型:

①同步阻塞IO(Blocking IO):即传统的IO模型。

②同步非阻塞IO(Non-blocking IO):默认创建的socket都是阻塞的,非阻塞IO要求socket被设置为NONBLOCK。注意这里所说的NIO并非Java的NIO(New IO)库。

③多路复用IO(IO Multiplexing):即经典的Reactor设计模式,有时也称为异步阻塞IO,Java中的Selector和Linux中的epoll都是这种模型(Redis单线程为什么速度还那么快,就是因为用了多路复用IO和缓存操作的原因)

④异步IO(Asynchronous IO):即经典的Proactor设计模式,也称为异步非阻塞IO

图解

看了这些,你应该对这些IO有了新的认识了吧,那就在看与转发支持一下呗^_^

来源:blog.csdn.net/lzb348110175/article/details/98941378

推荐阅读 点击标题可跳转
爸,我把对象带回来了,他是搞 MySQL 的
别小看这几个工具!能助你快速解决数据库瓶颈
万万没想到!TCP/IP 协议会有这么多漏洞
你还在用笨重的 ELK?试下这个轻量级日志新贵
一款炫酷、轻量级性能监控系统
免费好用!这款 Win10 增强工具不要错过
无论开发、运维,这7种软件架构模式得知道
干货分享!微服务入门篇
PS:因为公众号平台更改了推送规则,如果不想错过内容,记得读完点一下在看,加个星标,这样每次新文章推送才会第一时间出现在你的订阅列表里。
随手在看、转发是最大的支持!

您可能也对以下帖子感兴趣

文章有问题?点此查看未经处理的缓存