一、前言

  前面学习了Netty的ByteBuf,接着学习ChannelHandler和ChannelPipeline。

二、ChannelHandler和ChannelPipeline

  2.1 ChannelHandler

  在ChannelPipeline中,ChannelHandler可以被链在一起处理用户逻辑。

  1. Channel生命周期

  Channel接口定义了一个简单但是强大的状态模型,该模型与ChannelInboundHandler API紧密联系,Channel有如下四种状态。

  photoshop培训,电脑培训,电脑维修培训,移动软件开发培训,网站设计培训,网站建设培训

  Channel的生命周期如下图所示。

  photoshop培训,电脑培训,电脑维修培训,移动软件开发培训,网站设计培训,网站建设培训

  当状态发生变化时,就会产生相应的事件。

  2. ChannelHandler的生命周期

  ChannelHandler定义的生命周期如下图所示。

  photoshop培训,电脑培训,电脑维修培训,移动软件开发培训,网站设计培训,网站建设培训

  Netty定义了ChannelHandler的两个重要的子类

    · ChannelInboundHandler,处理各种入站的数据和状态的变化。

    · ChannelOutboundHandler,处理出站数据并允许拦截的所有操作。

  3. ChannelInboundHandler接口

  下图展示了ChannelInboundHandler接口生命周期中的方法,当接受到数据或者其对应的Channel的状态发生变化则会调用方法

  photoshop培训,电脑培训,电脑维修培训,移动软件开发培训,网站设计培训,网站建设培训

网友评论