当前位置:  开发笔记 > 编程语言 > 正文

io.netty.util.IllegalReferenceCountException:Netty中的refCnt:0

如何解决《io.netty.util.IllegalReferenceCountException:Netty中的refCnt:0》经验,为你挑选了1个好方法。



1> Ferrybig..:
    if (outboundChannel.isActive()) {
        outboundChannel.writeAndFlush(msg).addListener(new ChannelFutureListener() {
        // Snip
    }
    ctx.fireChannelRead(msg);

将ByteBuf传递给另一个通道后,其他通道的责任是再次减少引用计数.因为另一个通道现在递减了引用计数,所以它现在不可用.

解决此问题的最佳方法是在使用.retain()以下方法将流量传递到其他通道之前手动递增值:

outboundChannel.writeAndFlush(msg.retain()).addListener(new ChannelFutureListener() {
// Your remaining code

推荐阅读
保佑欣疼你的芯疼
这个屌丝很懒,什么也没留下!
DevBox开发工具箱 | 专业的在线开发工具网站    京公网安备 11010802040832号  |  京ICP备19059560号-6
Copyright © 1998 - 2020 DevBox.CN. All Rights Reserved devBox.cn 开发工具箱 版权所有