【发布时间】:2014-10-14 18:46:02
【问题描述】:
我正在处理在 ARM(Beagle Bone Black)上在 Java 8u6 下运行的 Java 程序的记忆效应。 当我启动我的程序并并行运行“top”命令时,我可以看到我的应用程序不断增加 RAM 消耗。 VIRT、RES 和 %MEM 不断增长。 这看起来像是我的应用程序中的内存泄漏。 所以我启动了一个 jstatd,为我的应用程序启用了 JMX,并通过 VisualVM 远程连接到我的应用程序。 查看我的应用程序,Visual VM 告诉我堆使用量不超过 42MB。我为我的应用程序设置了 -Xms=128m ,到目前为止,这个限制从未达到过。 查看元空间,它始终为 11MB。记忆样本告诉我没有实例不断增长。 没有任何迹象表明可能存在泄漏。 所以我想知道记忆去哪里了。有什么想法吗?
【问题讨论】:
-
您的意思是
Xmx,而不是Xms?另外,“堆使用”是什么意思?报告的堆 size 是多少? -
我的意思是 Xms。如果没有另外定义,我认为设置 Xms 会隐式地将 Xmx 设置为相同的值。
标签: java memory-leaks arm