1
ヒープスペース用にOutOfMemoryErrorを取得しているJavaアプリケーションがあります。私は-XX:HeapDumpOnOutOfMemoryErrorを有効にし、結果のhprofファイルを持っています。OOMを引き起こすスレッドのスタックトレース
しかし、ダンプは、ヒープ、permgenなどに十分なスペースが残っていることを示しています。これは、大量のメモリ(たとえば、1 GBの配列)に対する単一要求の原因である可能性があります。したがってダンプには現れません。
基本的には、OOMがスローされた時点でOOMを引き起こしたスレッドのスタックを見たいと思います。
これはhprofダンプから可能ですか?
私はそれだと思います!これが一番重要な情報であり、利用可能なメモリをはるかに超えるバグによる大規模な配列リクエストなど、多くの場合、それはあなたが気にしている唯一のものだから、ちょっと残念です。あなたがそれを記録するように設定されていないか、ログが取得できない場合、あなたはSOLです。 – BeeOnRope
私は特に、あなたがXXを使うときは同意します:HeapDumpOnOutOfMemoryErrorそれは簡単にトレースを含めることができます! –