NIO学习之路(二)

使用 NIO 完成网络通信

通道(Channel):负责连接

 java.nio.channels.Channel 接口:

        |--SelectableChannel

            |--SocketChannel

            |--ServerSocketChannel

            |--DatagramChannel

            |--Pipe.SinkChannel

            |--Pipe.SourceChannel

缓冲区(Buffer):

负责数据的存取

选择器(Selector):

是 SelectableChannel 的多路复用器。用于监控 SelectableChannel 的 IO 状况

NIO学习之路(二)_第1张图片NIO学习之路(二)_第2张图片

下面来写一个NIO未用选择器时阻塞的例子

NIO学习之路(二)_第3张图片

NIO学习之路(二)_第4张图片

NIO学习之路(二)_第5张图片

NIO学习之路(二)_第6张图片

下面使用选择器 进行NIO数据传输

NIO学习之路(二)_第7张图片 NIO学习之路(二)_第8张图片

NIO学习之路(二)_第9张图片

NIO学习之路(二)_第10张图片

你可能感兴趣的:(NIO学习之路(二))