Java 杂谈Netty程序员

Netty源码阅读入门实战(六)-pipeline

2018-08-09  本文已影响25人  紫霞等了至尊宝五百年

1 pipeline概述


2 pipeline初始化





双向链表结构



看看其一个实现类



基本数据结构组件






3 添加ChannelHandler

先看看用户代码























用户方自定义实现即可

4 未下载,失败 ing

6 outBound事件的传播



















同理以后的过程


7 异常的传播









对应 tail 为当前节点的情形

最佳实践


在最后定义异常处理器,否则默认是 tail 节点的警告打印信息
所有异常最终处理位置

8 pipeline总结



调用 pipeline 添加节点时,netty 会使用 instanceof 关键字判断当前节点是 inboound 还是 outbound 类型,分别用不同的 boolean 类型变量标识



inbound 事件类型顺序正相关

outbound 逆相关



异常处理器要么从 head 或者 tail 节点开始传播
inbound事件则从当前节点开始传递到最后节点
outbound事件则从当前节点开始传递 到第一个 outbound节点
上一篇下一篇

猜你喜欢

热点阅读