您当前的位置:首页 > 计算机 > 编程开发 > Other

netty 堆外内存泄漏(netty-socketio)

时间:12-14来源:作者:点击数:
  1. 一次 Connect 和 Disconnect 为一次连接的建立与关闭
  2. 在 Disconnect 事件前后申请的内存并没有释放(DIRECT_MEMORY_COUNTER 堆外统计字段)
  3. 断点打在 client.send() 这行, 然后关闭客户端连接,之后直接进入到这个方法,有个逻辑 encoder.allocateBuffer 申请堆外内存
  4. handleWebsocket :调用 encoder 分配了一段内存,调用完之后,我们的控制台立马就彪了 256B(怀疑肯定是这里申请的内存没有释放)
  5. encoder.encodePacket() 方法,把 packet 里面一个字段的值转换为一个 char(这里报 NPE)
  6. 跟踪到 NPE 之前的代码,看看为啥没有赋值进来,给附上值 解决
方便获取更多学习、工作、生活信息请关注本站微信公众号城东书院 微信服务号城东书院 微信订阅号
推荐内容
相关内容
    无相关信息
栏目更新
栏目热门
本栏推荐