2

如果我尝试使用 -Xmx1397m 命令行参数运行超过 1397mb 的 Java,则无法初始化。为什么是这样?

IE:

  • java path\java.exe" -Xmx1397m -> 作品

  • java path\java.exe" -Xmx1398m-> 崩溃

这台机器几乎有 100GB 未使用的内存,我正在运行 32 位 java

4

1 回答 1

1

这是 Windows 上 32 位 java 的一个已知问题,由于地址空间碎片问题,您无法获得预期的 3 GB 堆。HotSpot JVM 的堆需要一个连续的地址块,并且一些永久映射到用户空间的共享 DLL 正在对空间进行分段。

于 2013-03-20T14:39:14.827 回答