【发布时间】:2021-01-24 07:09:45
【问题描述】:
我有一个简单的 java 程序,我使用 -Xms=512mb 和 -Xmx=512mb 参数运行。所以初始堆是 512 Mb,这意味着我的 JVM 在我启动它时必须请求我的操作系统为程序分配至少 512 MB。如果我打开 jconsole,那么我看到最大堆大小为 524Mb(JVM 本身需要一些额外的内存),已提交内存为 524(保证可供 Java VM 使用的内存量)。但是如果我执行tasklist | find {my_pid}
然后我明白了
java.exe 7700 Console 1 145 272 КБ
我很困惑。怎么可能小于512Mb?
【问题讨论】:
-
您问过您的应用程序的堆空间如何小于 512MB。该线程回答了为什么 Xms 并不总是应用程序的最小堆大小。
-
@javadev 不是我