Netty源码实战(十一) - 设计模式的应用

1 单例模式


1.1 Netty 实例

1.1.1 ReadTimeoutException


可以看出,构造器私有,防止随意创建
static保证延迟加载

1.1.2 MqttEncoder

2 策略模式




3 装饰者模式


Netty 实践




4 观察者模式

4.1 常规操作






4.2 Netty 的实践

  • 在调用 writeAndFlush 后,其实返回的就是被观察者ChannelFulture
  • 添加观察者


    下面让我们深入writeAndFlush 看看
  • 从 pipeline 开始传播
  • 从 tail节点从后往前进行传播
  • promise就是被观察者



    下面看看添加观察者的源码实现~


3 迭代器模式

  • 示例

4 责任链模式


全部评论

相关推荐

accaacc:2到4k,不是2k到4k,所以年薪是30块
点赞 评论 收藏
分享
1 1 评论
分享
牛客网
牛客企业服务