我正在使用32位的Intellij,在我的32位Windows XP上,配备4GB的RAM。
我试图将Intellij的xmx增加到1.5GB:-Xmx1500m
所以我知道JVM支持在32位系统中使用1.5GB的RAM。
但是从JVM中抛出了这个错误:
The JVM could not be started. The maximum heap size (-Xmx) might be too large ...
我无法将Intellij的Xmx增加到900MB以上
请帮帮我!
我正在使用32位的Intellij,在我的32位Windows XP上,配备4GB的RAM。
我试图将Intellij的xmx增加到1.5GB:-Xmx1500m
所以我知道JVM支持在32位系统中使用1.5GB的RAM。
但是从JVM中抛出了这个错误:
The JVM could not be started. The maximum heap size (-Xmx) might be too large ...
我无法将Intellij的Xmx增加到900MB以上
请帮帮我!
由于内存碎片化,JVM需要在单个连续块中分配所有堆内存,因此您无法这样做。 请查看我的常见问题解答文章 以获取更多详细信息。
还可以参考这张图片:
正如您所注意到的,总进程内存不仅是堆大小,这使得更容易达到2GB操作系统限制。
可以使用的实际堆因操作系统配置和运行的其他应用程序而异(具有钩子的DLL注入到进程空间并导致额外的碎片化)。通常在512M至1G之间,但在干净的系统上可能会更高。