gpt4 book ai didi

java - Apache MINA 不会删除未使用的数据

转载 作者:太空宇宙 更新时间:2023-11-04 07:55:12 26 4
gpt4 key购买 nike

我的 MINA 客户端有一个小问题。

我只创建一个到服务器的连接,然后服务器每秒定期发送某种数据。

简而言之,客户端连接到服务器;服务器向客户端发送回一个字符串,并且所有这些步骤都使用相同的打开的连接(相同的客户端对象和客户端处理程序)。

但问题是,我认为旧数据没有被GC收集。使用的堆在几秒钟内变得越来越大并且永远不会减少。我的 messageReceived 方法是空的!

public void messageReceived(IoSession session, Object message) { }

有什么想法吗?

最佳答案

VisualVM 本身会产生大量垃圾。您可以启动一个空应用程序并 hibernate 线程,启用 VisualVM 并观察垃圾开始收集。没有代码。

但是,我看到了一个类似的问题,其中 mina 不保留而是生成永远不会被垃圾收集的长期运行项目(除非您运行 Full GC)。此问题可能会导致实际内存为 4mb 的应用程序在一个小时内显示为 80mb。它永远不会被收集。

我即将构建自己的框架来包装 NIO,因为如果不像这样重新启动,我永远无法让服务器长时间保持在线状态。

关于java - Apache MINA 不会删除未使用的数据,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/13720637/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com