Java中的IO模型

52 阅读1分钟

1.BIO(同步阻塞模型):当前操作会阻塞到处理完成

2.NIO(IO多路复用):通过选择器监听多个通道,非阻塞,处理完成后返回。只有在真正read的时候(也就是从内核空间拷贝数据到用户空间的过程会阻塞)。 IO多路复用模型中,线程首先发起select调用,询问内核数据是否准备就绪,等内核把数据准备好了,用户再发起read调用,read调用过程是阻塞的。

3.AIO(异步非阻塞模型):通知回调,非阻塞。