zoukankan      html  css  js  c++  java
  • BIO、NIO和AIO

    BIO(Blocking I/O)同步阻塞I/O

    这是最基本与简单的I/O操作方式,其根本特性是做完一件事再去做另一件事,一件事一定要等前一件事做完,这很符合程序员传统的顺序来开发思想,因此BIO模型程序开发起来较为简单,易于把握。

    NIO (New I/O) 同步非阻塞I/O

    关于NIO,国内有很多技术博客将英文翻译成No-Blocking I/O,非阻塞I/O模型 ,当然这样就与BIO形成了鲜明的特性对比。NIO本身是基于事件驱动的思想来实现的,其目的就是解决BIO的大并发问题,在BIO模型中,如果需要并发处理多个I/O请求,那就需要多线程来支持,NIO使用了多路复用器机制

    AIO (Asynchronous I/O) 异步非阻塞I/O

    Java AIO就是Java作为对异步IO提供支持的NIO.2

    AIO相对于NIO的区别在于,NIO需要使用者线程不停的轮询IO对象,来确定是否有数据准备好可以读了,而AIO则是在数据准备好之后,才会通知数据使用者,这样使用者就不需要不停地轮询了。

  • 相关阅读:
    nginx的配置
    html转pdf
    Mac 安装mysql
    网络编程
    五分钟搞定迭代器生成器
    mac 上多版本python 共存
    一张图片教会你写mysql 语句
    清晰明了的深浅拷贝
    已经入了vim的坑
    解决pip安装太慢的问题
  • 原文地址:https://www.cnblogs.com/Yanss/p/11678464.html
Copyright © 2011-2022 走看看