服务端还是客户端都进行了handler的设置,通过添加hanlder,我们可以监听Channel的各种动作以及状态的改变,包括连接,绑定,接收消息等。
在基类AbstractBootstrap有handler方法,目的是添加一个handler,监听Bootstrap的动作,客户端的Bootstrap中,继承了这一点。
在服务端的ServerBootstrap中增加了一个方法childHandler,它的目的是添加handler,用来监听已经连接的客户端的Channel的动作和状态。
handler在初始化时就会执行,而childHandler会在客户端成功connect后才执行,这是两者的区别。
作者:lxqfirst
链接:https://www.jianshu.com/p/da4d2b5e34ee
来源:简书
通过handler添加的handlers是对bossGroup线程组起作用,通过childHandler添加的handlers是对workerGroup线程组起作用,客户端Bootstrap只有handler()方法,因为客户端只需要一个事件线程组(https://blog.csdn.net/mazhongjia/article/details/104169615)
对于实际应用的情况,待续