我在一台有16 on和12 on可用的机器上定义了一个带有initial-heap-size="512m" max-heap-size="1024m"
的jnlp文件。由于本机库,JVM的运行是一个32位JVM。我知道我必须有1Gb的连续内存来分配最大内存。如果我将max-heap-size
减少到768,那么它将正常运行,有时我不需要减少它。
两个问题:
发布于 2014-10-28 19:36:26
如果你不能使用64位JVM.
如果在Windows上使用32位JVM,则需要研究“大地址感知”(JVM使用/LARGEADDRESSAWARE选项编译/链接)。它将允许您使用更大的内存占用32位.您可以在特定的可执行文件上设置位。
32位Windows可执行文件使用/LARGEADDRESSAWARE的缺点?
如果在Linux上,请查看系统的硬限制或软限制。这可能限制了进程的最大大小。此外,您可能有过程控制组。
对于ulimits,在Linux/UNIX上尝试
ulimit -a
特别是查看ulimit -m或-v设置。如果这些是无限的,您可能正在体验另一种类型的控制机制。
https://stackoverflow.com/questions/26642826
复制相似问题