尝试使用1G内存运行java时出现以下错误。
C:\>java -verbose -Xmx1G
当我运行它时,我收到以下消息:
Error occurred during initialization of VM
Could not reserve enough space for object heap
Error: Could not create the Java Virtual Machine.
Error: A fatal exception has occurred. Program will exit.
它的工作正常,最大内存设置为768M。我使用的是Java 7(版本1.7.0_15-b03)。
这是我系统的信息
Total Physical Memory: 3,510 MB
Available Physical Memory: 2,393 MB
Virtual Memory: Max Size: 2,048 MB
Virtual Memory: Available: 1,965 MB
Virtual Memory: In Use: 83 MB
OS: Windows XP.
答案 0 :(得分:1)
堆不仅依赖于可用的RAM或物理内存。 32位JVM的最大理论堆限制为4G。由于各种其他限制,例如可用交换,内核地址空间使用,内存碎片和VM开销,实际上限制可能会低得多。