Java NIO学习(二)

三种IO

在Java语言诞生以来,很多方面都在与时俱进或者不停的调优,影响虚拟机性能之一的IO同样也发生了几大阶段的变化

B I/O

Block I/O(同步阻塞I/O):
在应用程序发起I/O请求的时候,线程只能等待数据返回,在此期间不能做其他任何的事儿;

N I/O

New I/O(同步非阻塞I/O):
JDK1.4之后,学习了Linux系统的多路复用技术(Select模式)
应用程序发起I/O请求的时候,对所有线程不是阻塞,而是将所有的I/O请求交给一个selector线程去完成,这样就不是阻塞所有的线程.
现有的网络框架基本使用这种技术,比如:Netty

A I/O

NI/O2.0(异步非阻塞I/O)
JDK1.7之后,Java引进的新一代I/O,它也是学习了Linux的epoll模型
应用程序发起I/O的时候,对所有线程不阻塞,并且将处理I/O的请求交给操作系统去完成,在此期间,线程不是阻塞的,等到I/O完成后,会通知线程结束I/O

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值