BIO NIO AIO有什么区别?

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

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

适用场景:

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

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

适用场景:

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

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

适用场景:

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

相关推荐
小溪学编程几秒前
Java InputStream 详解:从基础到实战
java·python·php
血小板要健康1 分钟前
队列 + 宽搜(BFS):二叉树层序遍历 算法总结
java·数据结构·笔记·算法·leetcode·宽度优先
雪芽蓝域zzs8 分钟前
第十六节:递归组件实现无限层级折叠侧边栏菜单
开发语言·javascript·ecmascript
A黄俊辉A27 分钟前
【无标题】
java
BestHeaker31 分钟前
跨企业接口对接:IQDS / CPK 数据解析与协作避坑指南(五)
java·服务器·前端
神明不懂浪漫35 分钟前
【第二章】库、表、增删改查操作
开发语言·数据库·经验分享·笔记
传奇开心果编程36 分钟前
【Rust入门知识点学与练】第11课:HashMap 键值对集合
开发语言·学习·rust
yume_sibai1 小时前
03-Rust 函数式编程特性(闭包 + Iterator + Option/Result + 链式调用)
开发语言·后端·rust
俊昭喜喜里1 小时前
C#中的func<>
java·前端·c#
highreport1 小时前
net报表工具对比:HighReport 与 FastReport
java·c#