【发布时间】:2016-10-07 11:34:33
【问题描述】:
我有一个在 JVM 7 上运行的 JBoss 4.2.1 应用程序,它在抛出 OutOfMemoryExceptions 时触发了堆转储。我为 jvm 配置了以下开关:
-Xms1498m -Xmx3000m -XX:MaxPermSize=256m -XX:+HeapDumpOnOutOfMemoryError
我正在尝试通读堆转储以找出导致我的 OOME 的确切原因。我看到消耗了大块内存,但它们在某种程度上是意料之中的。我目前正在寻找的是“确凿证据”。
我已经打开了另一个SO issue here,因为我的堆转储中缺少内存,所以我试图弄清楚 OOME 发生时 JVM 在做什么。
堆转储中是否有任何内容可以指示哪个线程触发了 OOME?更具体地说,触发我的 OOME 的呼叫在做什么?我意识到并理解,在内存泄漏的情况下,这可能是在追踪错误的线索,但我正在寻找是否看到是哪个线程导致了异常。
到底有没有用MAT看这个?
【问题讨论】:
标签: java heap-dump eclipse-memory-analyzer