BIO、NIO、AIO的区别

1.阻塞与同步
a.阻塞与非阻塞
阻塞和非阻塞是进程在访问数据的时候,数据是否准备就绪的一种处理方式;当数据在没有准备的时候阻塞,则会等待缓冲区数据准备好之后才会处理其他工作,否则一直在那里等待。
非阻塞:当进程访问到数据缓冲区时,如果数据没有准备好直接返回,如果数据准备好则带着数据返回。
b.同步和异步
同步方法调用一旦开始,调用者必须等到方法调用返回后,才能继续后续的行为。
异步方法调用更像一个消息传递,一旦开始,方法调用就会立即返回,调用者就可以继续后续的操作。而,异步方法通常会在另外一个线程中,“真实”地执行着。整个过程,不会阻碍调用者的工作。
2.三个的区别
·BIO: Block IO同步阻塞式IO,也是传统的IO,它的特点是模式简单,使用方便,并发处理能力低。
·NIO: Non-block IO同步非阻塞IO,是传统IO的升级,客户端和服务端通过Channel(通道)通信,实现了多路复用。
·AIO: Asynchronous IO是NIO的升级,是异步非阻塞式IO,异步IO的操作基于事件和回调机制。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值