Netty Framework:channelOpen何时被调用?

时间:2012-07-09 15:50:58

标签: netty

根据Netty指南:http://static.netty.io/3.5/guide/#start.12

  

要跟踪打开的套接字,您需要修改   TimeServerHandler向全局添加新的开放频道   ChannelGroup,TimeServer.allChannels:

   
  @Override
  public void channelOpen(ChannelHandlerContext ctx, ChannelStateEvent e) {
        TimeServer.allChannels.add(e.getChannel());
  }

我在我的业务逻辑处理程序上实现了channelOpen。当新客户端建立连接时,我看不到它被调用。有人可以在调用channelOpen时详细说明吗?

另外,我是否可以编写一个上游处理程序,以便在ExecutionHandler 之前插入并在适当的时间调用channelOpen,或者有一个 在业务逻辑处理程序上实现channelOpen

如果可能的话,我希望能够与业务逻辑处理程序分开实现channelOpen

1 个答案:

答案 0 :(得分:3)

事件按此顺序进入:

channelOpen(..),channelBound(..),channelConnected(..)

...

cannelDisconnected(..),channelUnbound(..),channelClosed(..)

因此当客户端连接时,应首先调用channelOpen(..)。