netty 之handlerContext

272 阅读1分钟

handlercontext

  1. handler与pipeline的结合处
  2. one handler may have many context 盖一个handler实例可以添加到多个pipeline中,此时handler的class当添加上Sharable注解

AbstractChannelHandlerContext

context中存有状态

image.png

fireChannelXXX方法 作用:handler每个阶段(注册/解绑)完成后的补充

image.png

image.png 这是一套模板方法

  • 先找到对应状态的ctx
  • 再根据context找到handler
  • 最后根据handler去调用相应状态完成后的补充

bind/diregister/connect/disconnect/read/write/close/flush 也遵循同样的模板套路