本文正在参加「Java主题月 - Java Debug笔记活动」,详情查看 活动链接
问题:Java中增加堆大小
我用 Windows 2003 server (64-bit)工作,有8gb RAM。如何增加堆内存的最大值?我使用-Xmx1500m标志将堆大小增加到1500mb。我可以将堆占用的内存增加到物理内存的75% (6gb heap)吗?
回答一
在32位系统上可以增加到2GB。如果你在64位系统上,你可以升得更高。如果你写错了,不用担心,如果你在32位系统上要求5g, java会弹出一个无效的值的警告并退出。
正如其他人已经说的,使用cmd-line标志-例如。
java -Xmx6g myprogram
您可以通过输入java -X获得完整的列表(或者说几乎完整的列表)。
回答二
It is possible to increase heap size allocated by the JVM by using command line options Here we have 3 options
通过使用命令行选项,可以增加JVM分配的堆大小。这里有3个选项
-Xms<size> set initial Java heap size
-Xmx<size> set maximum Java heap size
-Xss<size> set java thread stack size
java -Xms16m -Xmx64m ClassName
在上面一行中,我们可以将最小的堆设置为16mb,最大的堆设置为64mb
回答三
在32位JVM上,理论上可以设置的最大堆大小是4gb。要使用更大的堆大小,您需要使用64位JVM。试试下面的:
java -Xmx6144M -d64
-d64标志很重要,因为它告诉JVM以64位模式运行。
回答四
这只适用于64位版本的Java。打开控制面板并单击Java图标。在Java控制面板的小窗口中,单击Java菜单栏,然后单击查看按钮。
如果您有两个Java平台,禁用以前版本的Java,然后单击Runtime参数输入文本的地方并写入-Xmx1024m或小于RAM大小的值。不要将堆大小增加到等于RAM,否则系统将崩溃。
文章翻译自Stack Overflow:stackoverflow.com/questions/1…