JVM's heap size keeps increasing (but usedMemory() keeps decreasing)

Woo*_* Wu 7 java linux java-8

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

您对发生的事情以及如何解决该问题有任何想法吗?

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

小智 0

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