Java NIO(New IO)是一個能夠替代標準Java IO API的IO API(從Java 1.4開始),Java NIO提供了與標準IO不一樣的IO工做方式。html
Java NIO: Channels and Buffers(通道和緩衝區)java
標準的IO基於字節流和字符流進行操做的,而NIO是基於通道(Channel)和緩衝區(Buffer)進行操做,數據老是從通道讀取到緩衝區中,或者從緩衝區寫入到通道中。segmentfault
Java NIO: Asynchronous IO(異步IO)異步
Java NIO能夠讓你異步的使用IO,例如:當線程從通道讀取數據到緩衝區時,線程仍是能夠進行其餘事情。當數據被寫入到緩衝區時,線程能夠繼續處理它。從緩衝區寫入通道也相似。socket
Java NIO: Selectors(選擇器)spa
Java NIO引入了選擇器的概念,選擇器用於監聽多個通道的事件(好比:鏈接打開,數據到達)。所以,單個的線程能夠監聽多個數據通道。線程
下面是Java NIO系列文章的目錄:server