The following classes are flagged by this rule:
java.nio.channels.SocketChanneljava.nio.channels.ServerSocketChanneljava.nio.channels.DatagramChanneljava.nio.channels.Pipe.SourceChanneljava.nio.channels.Pipe.SinkChannelPrior to Java 11, non-blocking and blocking I/O operations used the same codes path in the classes listed earlier. This implementation slowed I/O speed a reduced reliability. With this change there are multiple behavioral changes:
java.nio.channels.SocketChannel and java.nio.channels.ServerSocketChannel classes will now
delay closing their underlying connections until the closing channel is flushed from it's registered selectors. If used in conjunction
with netstat network monitoring you will notice a change in behavior that affect other libraries and applications selection operations.configureBlocking(false) on a selectable channel it will block until all blocking I/O operations are finished.For more information, see:
For more information on the behavior change in Java 11, see the Removed APIs in JDK 11 page.