bio、nio、aio、io多路复用

BIO-同步阻塞IO

bio、nio、aio、io多路复用_第1张图片

NIO-同步非阻塞IO

bio、nio、aio、io多路复用_第2张图片

不断的重复发起IO系统调用,这种不断的轮询,将会不断地询问内核,这将占用大量的 CPU 时间,系统资源利用率较低

IO多路复用模型-异步阻塞IO

IO多路复用模型,就是通过一种新的系统调用,一个进程可以监视多个文件描述符(如socket),一旦某个描述符就绪(一般是内核缓冲区可读/可写),内核kernel能够通知程序进行相应的IO系统调用。目前支持IO多路复用的系统调用,有select,epoll等等。这种模式也是通过轮训的模式,但这是内核空间自我轮训,减少消耗

AIO-异步非阻塞IO

bio、nio、aio、io多路复用_第3张图片

select,poll,epoll对比

bio、nio、aio、io多路复用_第4张图片

你可能感兴趣的:(nio,java,服务器)