我想在 eclipse indigo 中更改初始堆 (-xms) 和最大堆 (-xmx) 大小,但我不知道必须为堆分配的正确大小。在确定适合所用应用程序的大小时,有哪些注意事项?
2 回答
有几件事情需要考虑。
首先 - 你说你想“改变”堆和最大堆的初始大小。所以,问题很简单:你为什么需要它?例如,前段时间我不得不将 IntelliJ IDEA 的堆设置更改为更高的值,因为它无法处理我的项目。或者你有什么特定的理由来改变堆大小?
Eclipse 的堆设置可以位于 eclipse.ini 文件中。至少在我的 Eclipse Juno 中,eclipse.ini 包含:
-Xms40m
-Xmx512m
因此,堆的初始大小是 40 MB,但它可以调整到 512 MB。检查您的 eclipse.ini - 数字是否相同?
而且,正如我之前问过的,您能否告诉我,您为什么要更改堆设置?
编辑
Eclipse 的 Wiki 上关于如何在 Eclipse 中更改堆大小的不错的教程。
初始堆大小 大于机器上机器物理内存的 1/64 或某个合理的最小值。在 J2SE 5.0 之前,默认的初始堆大小是合理的最小值,这因平台而异。您可以使用 -Xms 命令行选项覆盖此默认值。
最大堆大小 小于物理内存的 1/4 或 1GB。在 J2SE 5.0 之前,默认的最大堆大小为 64MB。您可以使用 -Xmx 命令行选项覆盖此默认值。
你可以增加
导出 _JAVA_OPTIONS="-Xmx1g" java -jar jconsole.jar & 拾取 _JAVA_OPTIONS: -Xmx1g
或者
将 JAVA_OPTS 设置为系统变量,内容如下:
JAVA_OPTS="-Xms256m -Xmx512m"
之后在命令提示符下运行以下命令:
SET JAVA_OPTS="-Xms256m -Xmx512m"