当前位置: 首页 > news >正文

BIO NIO AIO 的区别!!!

  • BIO同步阻塞I/O模型,它使用一个线程来处理一个请求,如果这个请求没有被处理完,这个线程就会一直等待,直到请求处理完成。这种模型适用于连接数较小的情况。

  • NIO同步非阻塞I/O模型,它使用单个线程来处理多个请求,这些请求可以同时被这个线程处理,它通过轮询的方式来处理I/O请求,如果有I/O请求就处理,没有就继续轮询。这种模型适用于连接数较多但是连接时间短的情况。

  • AIO异步非阻塞I/O模型,这种模型不需要为每个请求创建一个线程,由操作系统内部的线程来处理I/O请求,同时它也具有非阻塞的特性,I/O请求不会一直等待,而是异步执行。这种模型适用于连接数很多的情况

举个生活中简单的例子,你妈妈让你烧水,小时候你比较笨啊,在那里傻等着水开(同步阻塞)。等你稍微再长大一点,你知道每次烧水的空隙可以去干点其他事,然后只需要时不时来看看水开了没有(同步非阻塞)。后来,你们家用上了水开了会发出声音的壶,这样你就只需要听到响声后就知道水开了,在这期间你可以随便干自己的事情,壶响了你需要去倒水了(异步非阻塞)。

相关文章:

  • 【Oracle生产运维】表空间利用率不足处理
  • RabbitMQ-工作模式(Topics模式RPC模式Publisher Confirms模式)
  • docker使用auth登录
  • LeetCode | 26.删除有序数组中的重复项
  • 【深度学习】深度学习之巅:在 CentOS 7 上打造完美Python 3.10 与 PyTorch 2.3.0 环境
  • 【问题解决】HttpURLConnection如何以POST的方式发送请求,传递form表单格式的数据到外部接口
  • AIGC之MetaHuman:HeyGen(基于AI驱动的视频生成平台+数字人)的简介、安装和使用方法、案例应用之详细攻略
  • C#开源软件:OneNote组件oneMore轻松打造自己的公众号编辑器
  • python如何判断变量是否是字符串
  • 基于springboot高校就业招聘系统的设计
  • 如何将jpg图像添加文字并转换成无压缩的dicom图像
  • 前端传递bool型后端用int收不到
  • ubuntu18.04离线源制作
  • qmt量化交易策略小白学习笔记第16期【qmt编程之获取北向南向资金(沪港通,深港通和港股通)】
  • 04-4.1.2 串的存储结构
  • 深入了解以太坊
  • 【译】JS基础算法脚本:字符串结尾
  • CoolViewPager:即刻刷新,自定义边缘效果颜色,双向自动循环,内置垂直切换效果,想要的都在这里...
  • CSS 提示工具(Tooltip)
  • ES学习笔记(10)--ES6中的函数和数组补漏
  • flutter的key在widget list的作用以及必要性
  • Java 内存分配及垃圾回收机制初探
  • Javascript Math对象和Date对象常用方法详解
  • mysql中InnoDB引擎中页的概念
  • npx命令介绍
  • Python学习笔记 字符串拼接
  • underscore源码剖析之整体架构
  • windows下使用nginx调试简介
  • 百度地图API标注+时间轴组件
  • 百度小程序遇到的问题
  • 从0实现一个tiny react(三)生命周期
  • 搭建gitbook 和 访问权限认证
  • 诡异!React stopPropagation失灵
  • 经典排序算法及其 Java 实现
  • 爬虫模拟登陆 SegmentFault
  • 如何邀请好友注册您的网站(模拟百度网盘)
  • 深度学习在携程攻略社区的应用
  • 支付宝花15年解决的这个问题,顶得上做出十个支付宝 ...
  • ​14:00面试,14:06就出来了,问的问题有点变态。。。
  • ‌[AI问答] Auto-sklearn‌ 与 scikit-learn 区别
  • # 学号 2017-2018-20172309 《程序设计与数据结构》实验三报告
  • #Linux(Source Insight安装及工程建立)
  • #LLM入门|Prompt#1.7_文本拓展_Expanding
  • #我与Java虚拟机的故事#连载09:面试大厂逃不过的JVM
  • (+4)2.2UML建模图
  • (1)常见O(n^2)排序算法解析
  • (delphi11最新学习资料) Object Pascal 学习笔记---第8章第2节(共同的基类)
  • (八十八)VFL语言初步 - 实现布局
  • (二十六)Java 数据结构
  • (解决办法)ASP.NET导出Excel,打开时提示“您尝试打开文件'XXX.xls'的格式与文件扩展名指定文件不一致
  • (未解决)macOS matplotlib 中文是方框
  • (转)微软牛津计划介绍——屌爆了的自然数据处理解决方案(人脸/语音识别,计算机视觉与语言理解)...
  • ******IT公司面试题汇总+优秀技术博客汇总
  • *1 计算机基础和操作系统基础及几大协议
  • .NET : 在VS2008中计算代码度量值