2012-03-05 9 views
5

OutOfMemoryErrorをキャッチするときにJavaを終了したい場合は-XX:+HeapDumpOnOutOfMemoryErrorを使用してhprofファイルをダンプします。
hprofファイルをダンプするときにJVMを起動する必要があるため、を使用できません。hprofファイルを作成した後にJVMを停止する方法はありますか?

は私が6OutOfMemoryError - 作成されたhprofの後でJVMを強制終了する方法

答えて

4

This pageあなたは「オン前

-XX:+HeapDumpOnOutOfMemoryError-XX:OnOutOfMemoryError="kill -9 %p"はおそらく、ヒープ・ダンプが作成されて組み合わせることができていることを暗示しているようだSunのJVMのバージョンを使用している明確にすること。 .. "コマンドが実行されます。 (これをテストするために何かを一緒に投げるのは簡単なはずです)

+1

私はこれらの2つのJVM引数を組み合わせて、あなたの前提が完全に正しいとは限りません。ダンプが完全に作成される前にkillが発生し、ダンプ作成の途中でJVMが枯渇し、 'hprof'が壊れてしまいました。 –

+0

OKですので、Oracleのページは誤解を招きます。しかし、あなたはその行動をして、望ましい行動を得ることができるはずです。 –

+0

'-XX:OnOutOfMemoryError'にコロンが足りません – mighq