Java NIO(New IO)是一個可以替代标準Java IO API的IO API(從Java 1.4開始),Java NIO提供了與标準IO不同的IO工作方式。
Java NIO: Channels and Buffers(通道和緩沖區)
标準的IO基于位元組流和字元流進行操作的,而NIO是基于通道(Channel)和緩沖區(Buffer)進行操作,資料總是從通道讀取到緩沖區中,或者從緩沖區寫入到通道中。
Java NIO: Non-blocking IO(非阻塞IO)
Java NIO可以讓你非阻塞的使用IO,例如:當線程從通道讀取資料到緩沖區時,線程還是可以進行其他事情。當資料被寫入到緩沖區時,線程可以繼續處理它。從緩沖區寫入通道也類似。
Java NIO: Selectors(選擇器)
Java NIO引入了選擇器的概念,選擇器用于監聽多個通道的事件(比如:連接配接打開,資料到達)。是以,單個的線程可以監聽多個資料通道。
作者:glowd
原文:
https://blog.csdn.net/zengqiang1/article/details/70239903