代码之家  ›  专栏  ›  技术社区  ›  Christian

Java中最大堆空间约束

  •  3
  • Christian  · 技术社区  · 14 年前

    我有一个需要大量内存的程序,希望将最大堆空间设置为6024MB。 Java给了我错误:

    Invalid maximum heap size: -Xmx6024m
    The specified size exceeds the maximum representable size.
    

    有解决办法吗?

    2 回复  |  直到 12 年前
        1
  •  5
  •   Bill the Lizard Alexis MP    12 年前

    在不同的Java虚拟机之间可以分配多少堆之间存在很大的差异。例如,Sun的虚拟机需要从操作系统将内存分配为单个块。对于Oracle的 JRockit 虚拟机。它也依赖于操作系统——例如,我可以使用Linux为Sun的虚拟机分配比WindowsXP可能分配更多的堆。另外请注意,我在某个地方看到64位操作系统的问题消失了…

    编辑:

    Here's a blog entry 关于Sun的JVM和Java堆空间问题的32位Windows OSES。

        2
  •  1
  •   Thomas Lötzer    14 年前

    这是64位虚拟机吗?如果是这样,您应该能够像使用开关一样使用它。