JVM的堆大小不断增加(但usedMemory()不断减少)

时间:2019-06-15 07:41:21

标签: java linux java-8

我在eJDK 1.8.201上运行了一个Java应用程序。我观察到系统报告说Java进程的RSS使用率一直在增加,它将达到512M物理内存的90%以上,并且我的代码将重新引导系统。另一方面,我从代码中定期打印出的usedMemory()表明它总是在不超过物理内存37%的有限范围内波动(意味着<= 190M)。据我了解,这意味着JVM并未将其空闲内存返回给操作系统。这种理解正确吗?我已经设置了-Xmx=256M -Xms=256M,所以我认为-Xmx选项无法正常工作。

您对发生的事情以及如何解决此问题有任何了解吗?

该系统是ARMv7板上的嵌入式Linux。

1 个答案:

答案 0 :(得分:0)

-Xmx=512M-Xms=512M 是无效标志。它们应更改为 -Xmx512M-Xmx512M