netty 错误 #[IllegalReferenceCountException: refCnt: 0, decrement: 1]
来源:互联网 发布:数据恢复大师下载 编辑:程序博客网 时间:2024/06/05 15:04
io.netty.util.IllegalReferenceCountException: refCnt: 0, decrement: 1
今天写了个ping/pong的服务器和客户端玩
但是出现了以上错误
ReferenceCount(引用计数)错误,看了很久,发现每一次发送第二条消息就会报这个错误
发现第一条消息和第二条消息一样的(引用的同一个地址)
后面想到netty好像有个引用计数的东西
后面改了之后就好了,代码如下
static class EchoClientHandler extends ChannelInboundHandlerAdapter { private final ByteBuf firstMessage; /** * Creates a client-side handler. */ public EchoClientHandler() { firstMessage = Unpooled.buffer(EchoClient.SIZE); firstMessage.writeBytes("ping".getBytes()); } @Override public void channelActive(ChannelHandlerContext ctx) { ctx.writeAndFlush(firstMessage); } @Override public void channelRead(ChannelHandlerContext ctx, Object msg) { ByteBuf in = (ByteBuf) msg; while (in.isReadable()) { System.out.print((char) in.readByte()); System.out.flush(); } System.out.println(); //之前是ctx.wirte(firstMessage)导致了错误 ByteBuf pong = Unpooled.buffer(EchoClient.SIZE); pong.writeBytes("ping".getBytes()); ctx.write(pong); } }
阅读全文
0 0
- netty 错误 #[IllegalReferenceCountException: refCnt: 0, decrement: 1]
- netty的异常分析 IllegalReferenceCountException refCnt: 0, decrement: 1
- REFCNT
- 编译器错误消息: CS0201: 只有 assignment、call、increment、decrement 和 new 对象表达式可用作语句
- 编译器错误消息: CS0201: 只有 assignment、call、increment、decrement 和 new 对象表达式可用作语句
- Netty-1
- Netty报Direct buffer memory错误
- netty入门(1)
- netty学习1
- Netty 学习(1)
- netty学习1
- Netty学习笔记:1
- netty 学习 (1)
- Netty - Bytebuf(1)
- Netty 疑问 1
- netty 学习 (1)
- 1.1.1Netty 介绍
- netty 学习 (1)
- python学习笔记-生成器并行
- 近期GAN的模型和理论发展
- hdu 5934-建图+tarjan缩点
- 欢迎使用CSDN-markdown编辑器
- 线程的阻塞
- netty 错误 #[IllegalReferenceCountException: refCnt: 0, decrement: 1]
- 设计模式-工厂模式
- 算法基础学习之路01-排序-冒泡排序
- Nginx安装最新版
- 杜教板子 线性推
- 数据结构实验之二叉树八:(中序后序)求二叉树的深度
- 选数字
- 【经典】mysql ISSAM如何快速去掉某个表中的重复名称
- 面试题之java基础:equals()和hashCode()区别?