netty中handlerUpstream和sendUpstream之间的区别

时间:2013-10-22 06:39:31

标签: netty nio

我是NIO和Netty框架的新手。

我正在使用netty开发示例HTTP服务器,因此我可以异步处理数千个客户端连接。我使用了多个处理程序进行编码,解码,聚合等等。

当一个处理程序发生消息接收事件时,我将它传递给下一个处理程序,依此类推。

为了传递偶数,我使用了ctx.sendUpstream(e) //ctx-ChannelHandlerContext, e-event

但是通过netty的源代码,我遇到了另一种方法handleUpstream(ctx, e)

我试图调试netty源代码,我对sendUpstream()handleUpstream()的使用感到困惑。

他们彼此之间有什么不同?我应该使用哪一个?

1 个答案:

答案 0 :(得分:1)

是的,Netty 3使用ChannelUpstreamHandler.handleUpstream()来处理传入的消息,使用ctx.sendUpstream()来进一步向上游传递消息。 Netty 4还有其他方法,如ctx.fireChannelRead()