我在eJDK 1.8.201
上运行了一个Java应用程序。我观察到系统报告说Java进程的RSS使用率一直在增加,它将达到512M
物理内存的90%以上,并且我的代码将重新引导系统。另一方面,我从代码中定期打印出的usedMemory()
表明它总是在不超过物理内存37%的有限范围内波动(意味着<= 190M
)。据我了解,这意味着JVM并未将其空闲内存返回给操作系统。这种理解正确吗?我已经设置了-Xmx=256M -Xms=256M
,所以我认为-Xmx
选项无法正常工作。
您对发生的事情以及如何解决此问题有任何了解吗?
该系统是ARMv7
板上的嵌入式Linux。
答案 0 :(得分:0)
-Xmx=512M
和 -Xms=512M
是无效标志。它们应更改为 -Xmx512M
和 -Xmx512M
。