この規則によって、以下のクラスにフラグが立てられます。
java.nio.channels.SocketChanneljava.nio.channels.ServerSocketChanneljava.nio.channels.DatagramChanneljava.nio.channels.Pipe.SourceChanneljava.nio.channels.Pipe.SinkChannelJava 11 より前、ノンブロッキング入出力操作とブロッキング入出力操作は、前述のクラスで同じコード・パスを使用していました。この実装により、入出力の速度と信頼性が低下しました。この変更では、以下のような複数の振る舞いの変更があります。
java.nio.channels.SocketChannel クラスと java.nio.channels.ServerSocketChannel クラスは、クローズしているチャネルが登録されているセレクターからフラッシュされるまで、基礎接続のクローズを遅延するようになりました。netstat ネットワーク・モニタリングとともに使用された場合、他のライブラリーおよびアプリケーションの選択操作に影響を与える振る舞いの変更があります。configureBlocking(false) を呼び出す場合、すべてのブロッキング入出力操作が終了するまでブロックします。詳しくは、以下を参照してください。
Java 11 での振る舞いの変更について詳しくは、 Removed APIs in JDK 11 のページを参照してください。