IIWAB Netty中ctx、Channel、ChannelPipeline的write()方法底层调用链的不同 - IIWAB

Netty中ctx、Channel、ChannelPipeline的write()方法底层调用链的不同

IIWAB 1年前 ⋅ 255 阅读

需要理解ChannelPipeline中的Handler链,才能完成理解其中入站出站的调用关系,入站是从head到tail,出站则相反从tail到head,异常是不会管是出站还是入站的都从下一个(next)开始,因此一般来说异常处理Handler都加到ChannelPipeline的tail节点前一个节点即可(即自定义Handler的最后一个),ChannelHandlerContext的write()方法是从当前节点的上(prev)一个出站节点开始执行,只经过了部分链路,而Channel和ChannelPipeline的write()方法是从尾结点开始往后执行的,经过了全部链路,这就是区别。


全部评论: 0

    我有话说: