Java は、NIO (New I/O) と呼ばれる 2 番目の I/O システムを提供します。NIO は、標準の I/O API とは異なる I/O を提供します。O 処理方法。これは、従来の I/O API (Java 1.4 以降) を Java に置き換えたものです。 (推奨学習: java コース )
バッファ指向のチャネルベースの I/O 操作メソッドをサポートします。 JDK 7 の導入により、NIO システムが拡張され、ファイル システム機能とファイル処理のサポートが強化されました。 NIO ファイル クラスでサポートされるこれらの新機能により、NIO はファイル処理で広く使用されています。
NIO を使用すると、カスタム ネイティブ コードを使用せずに Java プログラマが高速 I/O を実現できます。 NIO は、バッファの充填や排出などの一時的な I/O アクティビティをオペレーティング システムに戻し、操作を大幅に高速化します。
Java NIO の基本コンポーネントは次のとおりです:
チャネルとバッファ: 標準 I/O API で、次を使用します。文字ストリームとバイトストリーム。 NIO では、チャネルとバッファーが使用されます。データは常にバッファからチャネルに書き込まれ、チャネルからバッファに読み取られます。
セレクター: Java NIO は「セレクター」の概念を提供します。これは、データの到着、開かれた接続など、複数のチャネルを監視するために使用できるオブジェクトです。したがって、単一のスレッドで複数のチャネルからのデータを監視できます。
ノンブロッキング I/O (ノンブロッキング I/O): Java NIO はノンブロッキング I/O 機能を提供します。このアプリケーションは、利用可能なデータをすぐに返します。アプリケーションには、さらにデータの準備ができているかどうかを確認するためのプール メカニズムが必要です。
ノンブロッキング I/O のアプリケーションとオペレーティング システムのインターフェイスを見てみましょう:
以上がJavaのNIOとは何ですかの詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。