gpt4 book ai didi

Java 内存不足堆空间

转载 作者:行者123 更新时间:2023-12-02 05:57:22 25 4
gpt4 key购买 nike

大家。我正在做一个项目。一路上,我遇到了这行代码的“OutOfMemory”问题...

this.A = new int[n][n];

...对于 n = 10000;

我尝试通过添加 -Xmx2048m 来修复它命令,但问题是添加后,所有其余正在运行的程序都会停止响应。对于我的情况还有其他建议吗?非常感谢

最佳答案

您必须计算数组所需的空间。如果超过 2048M,那么您将收到 OutOfMemoryError

在您的情况下,您尝试分配一个 10000 x 10000 数组,即 100.000.000

原始int占用4字节。这意味着整个数组需要

100.000.000 * 4 字节,即 0,37 GB 空间。

看来你的程序中还有其他东西导致了错误。例如,如果您尝试在循环中分配多个数组,那么您可能很快就会耗尽内存。

如果您的硬件没有 2048M 内存,这可能会出现问题。

也有可能在使用 -Xmx2048m 之前,例如 -Xmx512m 对于您的数组来说可能太小。

关于Java 内存不足堆空间,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/22961215/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com