了解Netty 4中的channelRegistered,何时可以重新注册通道?

5
如在Netty 4.0版的新特性中所介绍:

channelOpen,channelBound和channelConnected已合并为channelActive。channelDisconnected,channelUnbound和channelClosed已合并为channelInactive。同样,Channel.isBound()和isConnected()已合并为isActive()。

请注意,“channelRegistered”和“channelUnregistered”与“channelOpen”和“channelClosed”不等价。它们是引入的新状态,支持通道的动态注册、注销和重新注册,如下图所示: enter image description here

在TCP/IP情况下,当一个通道被注销时,相应的套接字将关闭,如何再次进行“重新注册”?个人认为这是不可能的。
1个回答

4
当您注销通道时,它基本上会从服务线程中删除自己,在NIO的情况下也是选择器本身。这意味着您将不会收到任何事件更改的通知。一旦再次注册,通道将再次注册到选择器上,并且您将会收到有关事件(如OP_READ、OP_WRITE等)的通知。

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接