gpt4 book ai didi

java - eclipse 内存不足,分配了 8G 堆大小

转载 作者:太空宇宙 更新时间:2023-11-04 12:25:42 28 4
gpt4 key购买 nike

我有一个1.5G的xml文件,我使用了DOM java解析器(在抛出这个问题之后我知道DOM不是一个好的大数据工具,但我仍然对下面的问题感到好奇)。我的问题是“OutOfMemoryError: Java heap space”,根据已经存在的答案,我将 eclipse.ini -xms 和 -xmx 大小均更改为 8096m,并在 eclispe 窗口中显示堆状态以监视已使用了多少堆大小。当我运行这段代码时,它只是使用“80m/8096m”,然后抛出“内存不足”错误,我想知道为什么明显有巨大的空间未使用,即“8096m - 80m”,但仍然会内存不足。

最佳答案

I wonder why there is clearly huge space not used, i.e. "8096m - 80m ", but still get to out of memory.

您误解了某些内容1。 (IMO) 最可能的想法是您将 IDE (Eclipse) 使用的内存与用于运行应用程序的内存混淆了。

除非您正在做一些奇怪的(且不可取的)事情,否则您的应用程序将在单独的 JVM 中运行,其堆参数独立于 IDE 堆参数。毫不奇怪(对我来说),您的 Eclipse IDE 进程的实际内存使用量很小......因为那不是您的应用程序运行的地方。

调整 Eclipse 的堆参数对应用程序 JVM 堆参数没有影响!您实际需要做的是在 Eclipse 启动器配置中为您的应用程序设置堆参数。在 Eclipse 内。或者,从命令提示符手动启动应用程序。

<小时/>

但在这种情况下,我怀疑它是否有效。如果您可以将 1.5 GB XML 文件表示为 8 GB Java 堆中的 DOM,我会非常惊讶。这种表示形式的开销太大。

<小时/>

1 - 如果 Eclipse IDE 本身内存不足,它会变得非常慢,然后崩溃。到过那里。看到了。如果您正在开发或检查非常大的代码库,通常会发生这种情况。

关于java - eclipse 内存不足,分配了 8G 堆大小,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/38417088/

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