Java提供了一個叫作NIO(New I/O)的第二個I/O系統,NIO提供了與標準I/O API不同的I/ O處理方式。它是Java用來取代傳統I/O API(自Java 1.4以來)。 (建議學習:java課程)
它支援面向緩衝的,基於通道的I/O操作方法。隨著JDK 7的推出,NIO系統得到了擴展,為檔案系統功能和檔案處理提供了增強的支援。由於NIO文件類別支援的這些新的功能,NIO被廣泛應用於文件處理。
NIO為Java程式設計師實作高速I/O,而不使用自訂本機程式碼。 NIO將填充,排放緩衝區等的時間性I/O活動移回作業系統,從而大大提高了操作速度。
Java NIO基本元件如下:
#通道與緩衝區(Channels and Buffers):在標準I/O API中,使用字元流和位元組流。在NIO中,使用通道和緩衝區。資料總是從緩衝區寫入通道,並從通道讀取到緩衝區。
選擇器(Selectors):Java NIO提供了「選擇器」的概念。這是一個可以用於監視多個通道的對象,如資料到達,連接開啟等。因此,單執行緒可以監視多個通道中的資料。
非阻塞I/O(Non-blocking I/O):Java NIO提供非阻塞I/O的功能。這裡應用程式立即返回任何可用的數據,應用程式應該具有池化機制,以查明是否有更多數據準備就緒。
#下面來看看非阻塞I/O的應用程式和作業系統介面:
#以上是Java的NIO是什麼的詳細內容。更多資訊請關注PHP中文網其他相關文章!