1

Javaの世界に戻ると、JVMが最初のOutOfMemoryErrorでヒープダンプファイルを作成するように指定できました。C#に相当するものはありますか?

ヒープダンプが理想的ですが、ヒストグラムで解決します。

これを自動的に行う方法がない場合、この例外をフックしてから手動でヒープをウォークする方法はありますか?

4

2 に答える 2

0

クラッシュが発生したときにメモリをダンプするために、クラッシュの前に簡単に設定できるため、procdumpを使用します。次に、windbg を使用してメモリを調べます。

メモリの移動先がすぐにわからない場合 ( sos.dll ツール コマンド!dumpheap -statを使用)、procdump を使用して特定の間隔で多数のクラッシュ ダンプを取得し、どのメモリを追跡できるかを追加します。成長しています。

windbg と sos に慣れていない場合は、こちらを確認してください

于 2012-03-11T10:01:30.797 に答える
0

MS デバッグ ツールの ADPlus ユーティリティを使用して、すべてのヒープを含むプロセス ダンプを取得できます。次に、WinDBG.exe (デバッグ ツールでも) を使用して、!DumpHeap コマンドを使用して、必要なすべてのデータを取得できます。

少し古いが便利な HOWTO リンク

于 2012-03-11T09:43:47.547 に答える