用了io这么久,有没有真正的理解了,比如BIO、NIO、AIO是什么,能够在什么场景用到? BIO是同步阻塞IO,就是传统io,处理方式简单,一次只能读取一个字节流,并发能力低。同步非阻塞,就是咱们干一件事情,比如排队买面包,在买面包的过程中,不能做其他的事情,买完之后才能离开。可以使用在并发要求不高的服务中,但程序简单直观。 NIO是同步非阻塞io,是传统io的升级,客户端和服务端通过Channel通讯,实现了多路复用的情况。同步非阻塞,就是咱们干一件事情,比如排队买面包,在买面包的过程中,通过买票等待,等待的过程中还可以干其他的事情,但是不能离开买面包的地方。可以应用在聊天服务器,多个线程并发短连接的场景,成熟框架netty,使用netty框架解决了jdk的nio空轮询的问题. AIO是异步非阻塞io,是NIO的升级,也叫NIO2,异步的io操作是基于事件和回调机制,可以使用在多线程长连接的创建,比如相册服务器,服务段了,会有一个长连接不断轮询,进行信息同步。
浅谈BIO、NIO、AIO,一些感悟
原创
©著作权归作者所有:来自51CTO博客作者browser123的原创作品,请联系作者获取转载授权,否则将追究法律责任
提问和评论都可以,用心的回复会被更多人看到
评论
发布评论
相关文章
-
AIO,BIO,NIO
前言
BIO -
详解NIO、BIO、AIO
详解NIO、BIO、AIO
详解NIO、BIO、AIO -
Java BIO、NIO、AIO 学习
Java BIO、NIO、AIO 复习总结
Java BIO NIO AIO