BIO NIO AIO有什么区别?

通俗易懂地解释这些东西是我的风格,

BIO就是阻塞io,就是一个程序在发出io请求之后不能干任何别的事,只能等待请求,不断检测io的状态,只有接受到反馈之后才能干别的事

适用场景:

用作请求少而且连接时间短的情况

NIO就是非阻塞,也就是没有阻塞,怎么没有阻塞了?说白了就是发出io请求之后立即响应,然后程序就不用等待了,这就是非阻塞io

适用场景:

用作请求多但是请求连接时间短

AIO,也就是异步io,说白了,就是程序发出io请求之后,就啥也不用管了,做自己的事情,一切由操作系统进行负责,这就是异步io

适用场景:

用做请求多而且连接时间长的场景

相关推荐
兰亭妙微UI设计公司7 小时前
兰亭妙微软件界面设计公司的解锁按钮设计10大密码
开发语言·前端·javascript
人邮异步社区7 小时前
C语言好学,还是Python好学?
c语言·开发语言·python
栈帧之外7 小时前
【C++】红黑树实现
开发语言·c++
程序员老陆7 小时前
C++中同一个回调函数被多个设备并发调用:并发问题不在“函数”,而在“状态”
开发语言·c++·程序设计
wangchunyu1147 小时前
JDK8新特性实战(Lambda、Stream、Optional)
java·开发语言
鱼宵7 小时前
工厂模式实战:消灭魔法数字,把写死的 new 收进一个厂里
开发语言·python
JosieBook7 小时前
【多线程】两台机器同时抢一个字典:一次并发 Bug 的排查
java·网络·bug
niucloud-admin7 小时前
NIUCLOUD LITE AI开发文档--后台系统结构
开发语言
牛战士coding7 小时前
LLM 选错工具怎么办?提示词之外还需要确定性规则兜底
java·人工智能
今天的砖头有点烫手啊7 小时前
Java 序列化到底怎么选?从 Serializable 到 Protobuf 的演进与选型
java·json