前往小程序,Get更优阅读体验!
立即前往
首页
学习
活动
专区
工具
TVP
发布
社区首页 >专栏 >Netty源码实战(十一) - 设计模式的应用

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

作者头像
JavaEdge
发布2022-11-30 14:52:06
1870
发布2022-11-30 14:52:06
举报
文章被收录于专栏:JavaEdge

1 单例模式

1.1 Netty 实例

1.1.1 ReadTimeoutException

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

1.1.2 MqttEncoder

2 策略模式

根据 executers 去选择相应的策略
根据 executers 去选择相应的策略

3 装饰者模式

image.png
image.png

Netty 实践

4 观察者模式

4.1 常规操作

结果
结果

4.2 Netty 的实践

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

下面让我们深入writeAndFlush 看看

  • 从 pipeline 开始传播
  • 从 tail节点从后往前进行传播
  • promise就是被观察者

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

3 迭代器模式

  • 示例

4 责任链模式

本文参与 腾讯云自媒体同步曝光计划,分享自作者个人站点/博客。
原始发表:2019-02-22,如有侵权请联系 cloudcommunity@tencent.com 删除

本文分享自 作者个人站点/博客 前往查看

如有侵权,请联系 cloudcommunity@tencent.com 删除。

本文参与 腾讯云自媒体同步曝光计划  ,欢迎热爱写作的你一起参与!

评论
登录后参与评论
0 条评论
热度
最新
推荐阅读
目录
  • 1 单例模式
    • 1.1 Netty 实例
      • 1.1.1 ReadTimeoutException
      • 1.1.2 MqttEncoder
  • 2 策略模式
  • 3 装饰者模式
    • Netty 实践
    • 4 观察者模式
      • 4.1 常规操作
        • 4.2 Netty 的实践
        • 3 迭代器模式
        • 4 责任链模式
        领券
        问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档