どのようにしてくださいヒープのダンプカード5なくゴミを収集しょうか。

StackOverflow https://stackoverflow.com/questions/1268336

質問

長く続いていサーバアプリケーションのJava5、プロファイリングでき旧世代の成長はゆっくりです。で正確に解放された全GCが持ってき方など、さすがだなと私を見ることができ、到達不能なオブジェEclipseマット用ヒープダンプまた得られたヒープのダンプを使+XX:HeapDumpOnCtrlBreakが、JVMはいつものGC前にダンピングのヒント.どうやらそのようなことはなJava6ておりますがこだわった5。必要があります。を防止す。

役に立ちましたか?

解決

私はあなたのスナップショットを取ることを可能にするように YourKit のようにサードパーティのプロファイラを示唆しています最初のGCをキックオフなし。追加ボーナスは、あなたが全体のCTRL-ブレークペテンせずにスナップショットを取ることができます。

他のヒント

利用jconsoleはdoodleにはjmcま---その他のjmx管理ソフトである。開HotSpotDiagnostic com.ます。ます。選択方法選択 dumpHeap 入力パラメータ:

  • パスをダンプファイル
  • (true/false)のダンプに生ます。使用 false をダンプすべてのオブジェクト。

このダンプファイルが書き込まれるのJVMで接続ではなく、JVisualVMい場合、JVMしないようにするには、異なるシステムが書き込まれるシステム変数に制御されます。

enter image description here

あなたはJDKに同梱の標準jmapのツールを試してみましたか? jmapの通行料が正式のJava 5で導入されました。

例のコマンドライン: / javaの/ binに/ jmapの-heap:フォーマット= B

結果は、標準的なjhatツールであるいはMATのようなGUIアプリケーションで処理することができる。

私は、プログラムJMX上でヒープ・ダンプを取ることができ、ここでいくつかのコードを持っています

リンク:<のhref = "http://code.google.com/p/perfbench/source/browse/trunk/perfbench/jmeter-utils/src/main/java/jmeterutils/JmxHeapDumper.java" のrel = "nofollowをnoreferrer"> JmxHeapDumper.java の

ソースコード内のコメントは、ヒープ・ダンプを取る方法についての有用な情報を含ま記事への2つのリンクが含まれています。私は確かに知りませんが、あなたは幸運であるならば、おそらくJMXのアプローチは、GCを回避するためのいくつかの方法があります。この情報がお役に立てば幸い!

JProfilerを( EJ-技術に)これを行うことができます。

ライセンス: CC-BY-SA帰属
所属していません StackOverflow
scroll top