我将jvm的xmx设置为4 G,但是在运行一段时间后,当我使用top来查看内存时,它显示了使用12 G内存的过程。
那么xmx究竟意味着什么?如果我想将jvm内存限制为4 G,我该怎么办?
命令行:-server -Xms4g -Xmx4g
另一个相关问题:)
如果gc发生了,那么年轻一代中不再使用的对象的空间是否会被JVM不可避免地释放出来?或者其中一些留给下一个gc?
感谢
答案 0 :(得分:6)
JVM的-Xmx选项指定maximum size of the Java
garbage collected heap
。它不限制JVM使用的内存大小。 ps或top报告的进程大小
包括,以及该过程使用的任何其他内存。下列
是不属于垃圾收集堆的事物的示例
但它是该过程所需内存的一部分: