gpt4 book ai didi

java - 当SelectableChannel注册方法时会得到CancelledKeyException

转载 作者:行者123 更新时间:2023-12-01 11:08:46 27 4
gpt4 key购买 nike

JDK SelectableChannelSelectionKey register(Selector sel, int ops, Object att) 将抛出 CancelledKeyException。我想知道这个方法在什么场景下会抛出这个异常。

Java Doc 有一个简单的解释:

If this channel is currently registered with the given selector but the corresponding key has already been cancelled

但是对应的键是什么?因为该方法调用成功后该键将返回。所以我很困惑。另一个线程在同一个选择器上注册同一个 channel 是否会得到相应的key?

最佳答案

如果 channel 已经注册到该选择器,则根据新参数修改相应的 key 并返回,而不是构造新的 key。如果是取消的键,则会抛出异常。

关于java - 当SelectableChannel注册方法时会得到CancelledKeyException,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/32607883/

27 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com