Netty源码分析之ChannelPipeline(四)—出站事件的传播

Java47

上篇文章中我们梳理了ChannelPipeline中入站事件的传播,这篇文章中我们看下出站事件的传播,也就是ChannelOutboundHandler接口的实现。

1、出站事件的传播示例

我们对上篇文章中的示例代码进行改造,在ChannelPipeline中加入ChannelOutboundHandler出站实现

```
public class ServerApp {
public static void main(String[] args) {
EventLoopGroup boss = new NioEventLoopGroup();
EventLoopGroup work = new NioEventLoopGroup(2);
try {
ServerBootstrap bootstrap = new ServerBootstrap();
bootstrap.group(boss, work).channel(NioServerSocketChannel.class)
.childHandler(new ChannelInitializer() {
@Override
public void initChannel(SocketChannel ch) throws Exception {
ChannelPipeline p = ch.pipeline();
// p.addLast(new LoggingHandler(LogLevel.INFO));
// 向ChannelPipeline中添加自定义channelHandler

输入验证码查看隐藏内容

扫描二维码关注本站微信公众号 Johngo学长
或者在微信里搜索 Johngo学长
回复 svip 获取验证码
wechat Johngo学长

相关文章
JavaWeb过滤器Filter(附tomcat部分源码分析) Java

JavaWeb过滤器Filter(附tomcat部分源码分析)

过滤器Filter 过滤器通常对一些web资源进行拦截,做完一些处理器再交给下一个过滤器处理,直到所有的过滤器处理器,再调用servlet实例的service方法进行处理。过滤器可以对request进...
Springmvc基础及应用 Java

Springmvc基础及应用

SpringMVC简介和环境搭建 SpringMVC简介 Spring 为展现层提供的基于 MVC 设计理念的优秀的Web 框架,是目前最主流的 MVC 框架之一。在Spring3.0 后全面超越 S...
设计基础-软件架构笔记 Java

设计基础-软件架构笔记

看了网络上的一些资料,也看了一些书本上的资料。 总的来说,这感觉像是一片混乱。结合你自己的经历和经历,列出几个关注的关键点和个人经验。[En]In general, it feels like cha...
【李南江】从零玩转TypeScript Java

【李南江】从零玩转TypeScript

前言 老套路肯定是 需要知道TS是干啥用的啦. 1.什么是TypeScript(TS)? TypeScript简称TS TS和JS之间的关系其实就是Less/Sass和CSS之间的关系 就像Less/...
并发编程 1 Java

并发编程 1

jmm java 内存模型,这个东西目前先不跟jvm模型对应起来。 存在一个工作内存、驻内存的概念 线程间通信 cas 原子性 有序性 可见性 结合一个两个线程之间交互的例子 public class...
Pycharm k火秘诀插件 Java

Pycharm k火秘诀插件

Pycharm2020最新永久激活码插件(支持Windows),100%永久激活 用到pycharm工具发现没用多久时间又过期了,在网上有看到很多朋友都遇到同样的情况,于是找到了一批很不错的永久激活方...
Html5+Css3 Banner Animation 多方位移动特效 Java

Html5+Css3 Banner Animation 多方位移动特效

背景:朋友问我小米官网的mi4的特效会做吗,可能新接的一个小网站需要用到。一直有打算研究H5C3的一些效果,趁此机会,赶紧学习一下! 效果:如图 素材 HTML:
JVM的类加载过程 Java

JVM的类加载过程

每日一句 人到情多情转薄,而今真个不多情。 每日一句 The frog in the well knows nothing of the great ocean. 井底之蛙,不知大海。 JVM 的类加...
50道Redis高频面试题(13-20) Java

50道Redis高频面试题(13-20)

十三、线上Redis持久化策略一般如何设置 如果对性能要求较高,在master最好不要做持久化,可以在某个slave开启aof备份数据,策略设置为每秒同步一次即可。 十四、一次线上事故,Redis主节...
Matery主题自定义(一)黑夜模式 Java

Matery主题自定义(一)黑夜模式

黑夜模式 作为一个前端学习者,自然懂得黑夜模式的重要性,可惜主题原生未提供,那就自己弄吧 参考其他优秀产品的黑夜模式,得出共性: 那就是黑夜模式的背景一般不会是纯黑(#000);而是淡黑色,字体也不是...
JAVA变量、常量以及其命名规范 Java

JAVA变量、常量以及其命名规范

变量 变量即可以变化的量 Java是一种强类型语言,每个变量都必须声明其类型。 Java变量是程序中最基本的存储单元,其要素包括变量名,变量类型和作用域。 常量 常量(Constant):初始化后不能...
Vue初探 Java

Vue初探

MVVM模型 M:模型(Model) :对应 data 中的数据 V:视图(View) :模板(理解为html页面) VM:视图模型(ViewModel) : Vue 实例对象 数据驱动视图: 如上图...
docker 安装mysql5.7 Java

docker 安装mysql5.7

拉取镜像 docker pull mysql:5.7 准备数据目录 mkdir -p /mall/docker/mysql/conf mkdir -p /mall/docker/mysql/logs ...