java - 更改最大 Java 堆大小

标签 java heap-size

正如许多来源中所描述的那样,我正在尝试从命令行使用 java -Xms512m 以便将 Java 机器的最大堆大小设置为 512 Mb。 但是出了点问题,命令行显示如下
enter image description here

而且,正如我直接从程序中检查的那样: long heapMaxSize = Runtime.getRuntime().maxMemory(); heapMaxSize 等于 954728448,大约 1Gb。

最佳答案

这称为 VM 参数,必须在启动 VM(JVM)时指定。

您可以在运行程序时指定最大堆大小:

java -Xmx1024m -jar yourJar.jar

或者,您可以在系统 JAVA_OPTS 上设置一个环境变量,JVM 将在启动时遵循您的设置:

JAVA_OPTS="-Xmx1024m"

关于你的第二个问题,建议你引用What are Runtime.getRuntime().totalMemory() and freeMemory()?因为它阐明了 Runtime.getRuntime().maxMemory() 和 friend 返回的值。

关于java - 更改最大 Java 堆大小,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/37886368/

相关文章:

c++ - 扩大堆大小C++

java - 除非重新启动 Glassfish 服务器,否则不会反射(reflect)属性文件更改

java - Spring Boot无法连接MySQL : The server time zone value 'Mitteleuropäische Zeit' is unrecognized

java - 错误: Client does not support authentication protocol requested by server; consider upgrading MySQL client

Zend Studio 的 Java 堆大小,达到软限制,强大的硬件

java - 如何增加 Android 中的堆大小?

java - 检查java/js/jsp中某个ip的端口是否打开

java - Tapestry5 Form - 用户定义的 html 属性

ibm-cloud - 具有特定内存限制的 CF Liberty 实例的堆大小设置如何