1、可以通过 Selector 管理多个 SelectableChannel,它的 select() 方法可以监测哪些信道已经准备好进行 I/O 操作了,返回值代表了这些 I/O 的数量。
int select() int select(long timeout) int selectNow()
2、当调用 select() 方法后,它会把代表已经准备好 I/O 操作的信道的 SelectionKey 保存在一个集合中,可以通过 selectedKeys() 返回。
Set<SelectionKey> selectedKeys()
select() 的三个方法,从命名就可以看出这几个方法的不同之处,第一个方法是阻塞式调用,第三个方法设置了一个超时时间,第三个方法是立即返回。
1、简单,只需理解基本的概念,就可以编写适合于各种情况的应用程序;
2、面向对象;
3、分布性,Java是面向网络的语言;
4、鲁棒性,java提供自动垃圾收集来进行内存管理,防止程序员在管理内存时容易产生的错误;
5、安全性,用于网络、分布环境下的Java必须防止病毒的入侵;
6、体系结构中立,只要安装了Java运行时系统,就可在任意处理器上运行;
7、可移植性,Java可以方便地移植到网络上的不同机器;
8、解释执行,Java解释器直接对Java字节码进行解释执行。
以上是java的Selector怎么选择通道的详细内容。更多信息请关注PHP中文网其他相关文章!