Java 32位 - 不能分配超过-Xmx512m? 8 GB,64位Windows 7

时间:2015-05-20 21:08:27

标签: java memory-management pentaho

我使用ETL程序Pentaho进行数据集成。我遇到了内存问题,但每次设置时都会出现致命错误" -Xmx512m"更高的(1024 +)。

我的计算机上有Java 32位 - 安装Java 64位可能会解决这个问题吗? (我需要IT来安装程序)。我认为32位的最大GB至少是1G。

同样,我的计算机有8 GB的物理内存......我现在不太开放 - 可能是什么问题?我该怎么做才能解决这个问题?

1 个答案:

答案 0 :(得分:0)

任何32位的限制是最大~3GB,但这适用于运行本机的代码。 Java在虚拟机内运行。所有Java可以使用的最大值约为3GB,但除了运行代码以保持Java启动和运行之外,还有其他部分,更不用说机器上的其他32位代码了。

此外,您可以调用的具体内容可能仅限于不超过2 ^ 10(1024)兆字节条目的注册表。

因此,切换到64位可能有助于解决您的问题,但无法保证在系统本机上运行的某些内容可能会占用您正在运行的代码的较小占用空间。