BIO NIO AIO有什么区别?

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

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

适用场景:

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

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

适用场景:

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

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

适用场景:

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

相关推荐
luffy545913 小时前
Rust语言入门-变量篇
开发语言·后端·rust
2301_8073671913 小时前
C++中的模板方法模式
开发语言·c++·算法
weixin_5375904513 小时前
《C程序语言设计》练习答案(练习1-3)
c语言·开发语言
m0_4592524613 小时前
fastadmin动态渲染统计信息
开发语言·前端·javascript·php
MegaDataFlowers14 小时前
快速上手Spring
java·后端·spring
小江的记录本14 小时前
【MyBatis-Plus】Spring Boot + MyBatis-Plus 进行各种数据库操作(附完整 CRUD 项目代码示例)
java·前端·数据库·spring boot·后端·sql·mybatis
左左右右左右摇晃14 小时前
Java 笔记--OOM产生原因以及解决方法
java·笔记
大傻^14 小时前
Spring AI Alibaba Function Calling:外部工具集成与业务函数注册
java·人工智能·后端·spring·springai·springaialibaba
傻啦嘿哟14 小时前
Python 操作 Excel 条件格式指南
开发语言·python·excel
逆境不可逃14 小时前
LeetCode 热题 100 之 33. 搜索旋转排序数组 153. 寻找旋转排序数组中的最小值 4. 寻找两个正序数组的中位数
java·开发语言·数据结构·算法·leetcode·职场和发展