Netty_Is Not a @Sharable handler異常

在學習netty創建連接的時候產生一個報錯

io.netty.channel.ChannelPipelineException: com.py.netty.server.DefaultServerHandler
	 is not a @Sharable handler, so can't be added or removed multiple times.

在服務端, 傳入處理器的時候, 使用的是同一個實例, 所以會產生這個報錯.

解決方案:

1. 不使用單實例, 使用new方法每次都創建一個新的

ch.pipeline().addLast(new DefaultServerHandler());

2. 添加註解 @Sharable
看一下自己的業務需求是否符合使用同一個實例

@ChannelHandler.Sharable
public class DefaultServerHandler extends ServerHandler {
...
}
發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章