java nio 學習筆記

Java NIO(New IO)是一個可以替代標準 Java IO 的 API(從Java 1.4開始),提供了與標準IO 不同的工作方式。

Java NIO: Channels and Buffers(通道和緩衝區)

標準的 IO 基於字節流和字符流進行操作的,而NIO是基於通道(Channel)和緩衝區(Buffer)進行操作,數據總是從通道讀取到緩衝區中,或者從緩衝區寫入到通道中。

Java NIO: Non-blocking IO(非阻塞IO)

Java NIO 可以讓你非阻塞的使用 IO,例如:當線程從通道(Channel)讀取數據到緩衝區時(Buffer),線程還是可以進行其他事情。當數據被寫入到緩衝區時,線程可以繼續處理它。從緩衝區寫入通道也類似。

Java NIO: Selectors(選擇器)

Java NIO引入了選擇器(Selector)的概念,選擇器用於監聽多個通道(Channel)的事件(比如:連接打開,數據到達)。因此,單個的線程可以監聽多個數據通道(Channel)。

在這裏插入圖片描述
http://tutorials.jenkov.com/java-nio/index.html
http://ifeve.com/java-nio-all/
https://tech.meituan.com/2016/11/04/nio.html
https://www.zhihu.com/question/29005375
https://zhuanlan.zhihu.com/p/25701512
https://zhuanlan.zhihu.com/p/25914350
https://zhuanlan.zhihu.com/p/26243285

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章