我配置了一个Java服务器,以-Xmx12288M
和-Xmx12288M
开头;但是当我进入Java进程并运行这个:java -XX:+PrintFlagsFinal -version | grep -iE 'MaxHeapSize'
时,我看到4141875200的值 - 我相信这是〜4GB。基于XX不考虑Java最大堆大小(Xmx):printFlagsFinal
我跑jps -vl
,我确实在那里看到-Xmx12288M
。我是否正在查看过程可以使用的最大堆大小的错误位置?或者它实际上没有使用配置的最大堆大小?
这是在64位JVM上运行。
是的,这是正确的答案。运行java -version将启动一个新的java进程。 –