如何手动设置java环境的堆大小?

时间:2011-04-27 12:15:56

标签: heap java

如何设置java堆大小并手动检查?

4 个答案:

答案 0 :(得分:3)

看到这个 http://www.caucho.com/resin-3.0/performance/jvm-tuning.xtp 如果你想通过你的程序观察消耗多少内存,请使用jvisualvm.exe(这将在%JAVA_HOME%/ bin文件夹下可用)

答案 1 :(得分:1)

您可以使用-ms-mx选项设置最小和最大堆大小。您还可以使用较旧的-Xms-Xmx选项。

手动检查是什么意思?您可以使用jconsole查看堆大小。

答案 2 :(得分:0)

只需添加以下开关

-Xms -Xmx

-Xmx表示最大堆大小,-Xms表示初始堆大小。

获取堆大小

Runtime.getRuntime().totalMemory();

答案 3 :(得分:0)

命令行中的

java -X显示了可用于微调JVM的参数列表。最值得注意的是,当涉及到堆-Xms-Xmx时,它允许您设置初始堆大小和最大堆大小。 您可以随时使用Runtime.getRuntime().freeMemory()进行检查 - 但是值得注意的是,如果您启动JVM,说100MB(堆启动)和1GB堆最大值,则可用内存最初可能为100MB(如果堆上没有任何内容)并且然后随着堆扩展到1Gb而增长。但是,如果您将初始大小和最大大小设置为相同,则freeMemory()将始终反映堆中剩余的确切空闲内存,因为堆永远不会扩展。