当前位置: 首页 > 知识库问答 >
问题:

什么是OutOfMemoryError以及如何调试和修复它

夹谷宜民
2023-03-14

这个问题不同于关于调试异常的一般建议,因为问题的原因并不总是在调用堆栈上,而特定的建议是必要的。

共有1个答案

仲孙毅
2023-03-14

OutofMemoryError是Java虚拟机(JVM)抛出的异常,因为它需要为(新的)对象分配内存,但该对象的可用内存不足。JVM将首先尝试通过运行垃圾收集器来释放死对象使用的内存。

由于OutofMemoryErrorVirtualMachineError,所以允许JVM随时抛出它,尽管它必须首先尝试通过垃圾收集释放内存。

但是,在实践中,它很可能是从试图创建无法为其分配内存的对象的new语句引发的。因此,您应该首先检查与异常关联的stacktrace,以获得有关问题原因的线索,就像检查任何其他异常一样。

    null
 类似资料:
  • 请解释Spring中关于异常的以下内容: 这是什么意思? 在什么条件下抛出? 如何预防? 这篇文章是关于使用Spring的应用程序中出现的全面问答。

  • 我有一些代码,当我运行它时会产生一个错误,说: NoSuchMethod:对null调用了方法“XYZ” 这意味着什么?我该如何修复它?

  • 问题内容: 我对Linux中的$ PATH有一些疑问。 我知道它告诉shell搜索可执行文件的目录,因此: 环境变量是什么意思? 如何改变其路径?并建议更改它? 如果我更改它,后果是什么? 问题答案: 要获取路径当前变量,请输入: 它告诉您的Shell在哪里寻找二进制文件。 是的,您可以更改它-例如,使用自定义脚本添加到文件夹。 因此:如果要执行脚本,则必须输入脚本的完整路径: 更改变量后,只需键

  • 问题内容: 有人可以给出一个清晰的定义,以及一个简单的示例,为不了解JavaScript和node.js的人解释什么是“回调地狱”吗? 什么时候(以哪种设置)发生“回调地狱问题”? 为什么会发生? “回调地狱”是否总是与异步计算相关? 还是在单线程应用程序中也可能发生“回调地狱”? 我在Coursera参加了“反应式课程”,Erik Meijer在他的一次演讲中说RX解决了“回调地狱”的问题。我在

  • 我正在使用改造下载一些媒体文件,如视频,mp3,jpg,pdf。在我的应用程序中,当我想下载一个MP4格式的55MB的大文件时,Trere是一个问题。当我想下载这个文件时,我会遇到如下错误: 最后,这是我的createServiceFile方法: 如果你能帮助我,我真的很感激:)

  • 问题内容: 我已经阅读了很多资源,但仍然坚持了解时间的复杂性。我阅读的资源是基于各种公式的,我理解这是用来表示时间复杂度的,但是我不知道如何。任何人都可以以一种可以理解的清晰方式向我解释这个原则。 问题答案: 参考:如何计算时间复杂度算法 我找到了一篇与 如何计算任何算法或程序的时间复杂度* 有关的好文章 * 计算时间复杂度最常用的指标是Big O表示法。这消除了所有恒定因素,因此当N接近无穷大时