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