[英]Java NIO why Selector has to work with Channel in non-blocking mode?
java.nio
和Channel
的强大之处在于您可以以非阻塞方式监视多个套接字。 换句话说,传统的java.io
是一种具有阻塞 IO 调用single-thread / single-socket
方法,而java.nio
的用途是在不需要数千个套接字连接的情况下生成数千个套接字连接(通过通道和选择器)线程。 这里选择器的工作是帮助你的线程/线程池从准备好和连接的通道中读取和写入。
频道的 Java 文档将其定义为,
定义通道,表示与能够执行 I/O 操作的实体的连接,例如文件和套接字; 定义选择器,用于多路复用、非阻塞 I/O 操作
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.