NIO Channel
Summary::
Channel 类型有:
- FileChannel, 文件操作. FileChannel 不能设置为非阻塞模式.
- DatagramChannel, UDP 操作
- SocketChannel, TCP 操作
- ServerSocketChannel, TCP 操作, 使用在服务器端.
这些通道涵盖了 UDP 和 TCP网络 IO以及文件 IO.
关注的操作
每个Channel在注册到Selector时,都有一个感兴趣的操作。
- ServerSocketChannel 只会在选择器上注册一个,其感兴趣的操作只有ACCEPT,表示其只关心客户端的连接请求
- SocketChannel,通常会注册多个,因为一个server通常会接受到多个client的请求,就有对应数量的SocketChannel。SocketChannel感兴趣的操作是CONNECT、READ、WRITE,因为其要与server建立连接,也需要进行读、写数据。