键集大小为0时,选择器的默认行为是什么?

| 只是想知道当键集为0时Java中ѭ0的正常行为是什么,因为它本质上是没有意义的操作(没有可供选择的键)。即使键设置为0,操作也可能仍然发生。但是,在选择期间是否可以注册通道键,并在选择期间重新评估操作? 如果不是这种情况,那么没有键的选择操作肯定会花费无数的时间吗?在这种情况下,其他网络代码会怎样? :)也许只是确保密钥集永远不会为0的一种情况。但是我想知道,因为我已经编写了一个选择器,并且需要确保它与官方行为匹配。     
已邀请:
Selector
类是抽象的,实际操作取决于
SelectorProvider
实际返回哪种
Selector
实现。这些取决于操作系统。 如果实现使用Sun的
sun.nio.ch.SelectorImpl
作为基类(它也是抽象的),则可以观察到
select()
方法在调用抽象
doSelect()
方法之前在公钥上同步。 “ 7”方法还可以在公共密钥上同步,因此,肯定有可能寄存器将不得不等待选择,并且选择将永远不会完成,因为没有进行任何注册。 不幸的是,所有都是抽象类,所以我们不能确定。我确实注意到
Selector
文档描述了如何解开卡在
select()
中的线程,因此大概它经常出现而值得记录,因此您不用担心。     

要回复问题请先登录注册