如何检查正在运行的 Java 应用程序的已配置 Xmx 值

2022-09-01 16:32:40

我正在创建一个NSIS脚本,其中可以在安装过程中设置正在安装的java应用程序的Xmx值。我不确定此参数是否设置正确。有没有办法在应用程序运行时检查配置的Xmx值?


答案 1

就我而言,jmap是我能找到的最佳解决方案:

jmap -heap <pid>

上述命令显示完整堆配置 + 当前使用情况。

jmap 命令包含在 bin 目录的 jdk 中。


答案 2

便宜又脏(不确定可靠性):

Runtime.getRuntime().maxMemory();

还成功使用了以下内容:

    MemoryMXBean memoryBean = ManagementFactory.getMemoryMXBean();
    memoryBean.getHeapMemoryUsage().getMax();