2012-07-09 58 views
1

按照Netty的指南:http://static.netty.io/3.5/guide/#start.12Netty Framework:channelOpen何時被調用?

要跟蹤開放式插座,你需要修改 TimeServerHandler到一個新的開放的頻道添加到全球 通道組,TimeServer.allChannels:

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

我在業務邏輯處理程序上實現了channelOpen。當新客戶建立連接時,我不會看到它。任何人都可以詳細說明何時調用channelOpen

另外,我可以寫一個上游處理程序中插入ExecutionHandler,預計channelOpen在適當的時候被調用,還是一個實現對業務邏輯處理程序channelOpen

我希望能夠實現channelOpen獨立於業務邏輯處理程序,如果可能的話。

回答

3

事件到來時,按以下順序:

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

...

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

所以channelOpen(..)應當客戶端連接稱爲第一件事..

相關問題