Netty ChannelHandler @Sharable

简单介绍

先看看源码中的说明:
Netty ChannelHandler @Sharable_第1张图片
一个ChannelHandler如果使用了@Sharable注解,就可以只在bootstrap中创建一个实例,它就可以被添加到一或多个pipeline中且不存在竞争,这样可以减少同一类handlernewGC,节省资源,提高效率

不过要注意这个ChannelHandler必须是无成员变量的,如果该handler中有成员变量,可以考虑将成员变量修改为AttributeKey

举个例子

以处理心跳的ChannelHandler为例:
Netty ChannelHandler @Sharable_第2张图片

你可能感兴趣的:(java,netty)