BIO NIO AIO有什么区别?

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

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

适用场景:

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

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

适用场景:

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

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

适用场景:

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

相关推荐
上海云盾-高防顾问4 分钟前
DNS异常怎么办?快速排查+解决指南
开发语言·php
开发者小天9 分钟前
python安装 Matplotlib 库 安装 Seaborn 库
开发语言·python·matplotlib
wjs202411 分钟前
《Foundation 折叠列表:设计与应用解析》
开发语言
Diligently_27 分钟前
idea 中vm option 配置
java·ide·intellij-idea
短剑重铸之日30 分钟前
《Seata从入门到实战》第七章:seata总结
java·后端·seata
予枫的编程笔记33 分钟前
【Kafka高级篇】避开Kafka原生重试坑,Java业务端自建DLQ体系,让消息不丢失、不积压
java·kafka·死信队列·消息中间件·消息重试·dlq·java业务开发
晞子的技术札记34 分钟前
单相Heric并网逆变器工作原理及MATLAB仿真测试
开发语言·matlab
上官-王野1 小时前
公务员暂停工伤保险
java
李云龙炮击平安线程1 小时前
Python中的接口、抽象基类和协议
开发语言·后端·python·面试·跳槽
十五年专注C++开发1 小时前
Qt deleteLater作用及源码分析
开发语言·c++·qt·qobject