JAVA IO编程 IO多路复用底层机制

Posted hpzhu

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了JAVA IO编程 IO多路复用底层机制相关的知识,希望对你有一定的参考价值。

前面IO模型中有提到IO多路复用,这里介绍下linux下的三种机制(基于多路复用模型的)

 

select,poll,epoll

技术分享图片

 

反应器模式Reactor和Proactor模式

两者的主要区别是就是真正的读取和写入操作是由谁来完成的

Reactor中需要应用程序自己读取或者写入数据

Proactor模式,应用程序不需要进行实际的读写过程,它只需要从缓存区读取或者写入即可,操作系统会读取缓存区或者写入缓存区到真正的IO的设备

Reactor(反应器模式)

  说明你可以进行读写操作了,关注的是IO操作的就绪事件(采用同步IO)

Proactor

  说明已经完成完成读写操作了,具体内存在给定缓存区中,可以对这些内容进行其它操作了,关注的是IO操作的完成事件(采用异步IO)

 


以上是关于JAVA IO编程 IO多路复用底层机制的主要内容,如果未能解决你的问题,请参考以下文章

IO多路复用机制详解

从Go编程看IO多路复用Select

IO多路复用的三种机制Select,Poll,Epoll

IO多路复用机制(转)

20第七周-网络编程 - IO多路复用及selectpollepoll模式详解

IO多路复用