0

次のチュートリアルのアドバイスに従いました: http://humblecoder.co.uk/tag/windbg . 私は、このコマンドを実行してください: !dumpheap. 3 番目の列に合計バイト数を追加し、それを 1024 と 1024 で再度割りました。これは 42MB に相当します。問題の ASP.NET プロセスのサイズは 1.5 GB を超えています。

これは Windows 2003 サーバーで実行されますが、タスク マネージャーでダンプ ファイルを作成するオプションはありません。したがって、コマンド .dump /ma w3wpdump.dmp を実行する必要があります。これはミニ ダンプなので、不足しているもので役立つものはありますか?

昨日、これについて別の質問をしましたが、問題の概要を説明しています: ASP.NET メモリ リーク - OracleCommand オブジェクト

4

1 に答える 1

0

他の質問を見ると、メモリ使用量の大部分が文字列によって使用されているようです。それらの文字列の一部をダンプして、それらの内部にあるものを確認します。ddまたはdbまたはを使用して文字列の内容を表示し、文字列duのインスタンスの 1 つのメモリ アドレスを指定できます。つまりdd 0x12345678、そこにあるメモリの生の内容をダンプします。d*コマンドの詳細については、windbg のヘルプを参照してください。

しかし、マネージ ヒープがメモリを消費していないように見える場合は、アンマネージ ヒープを調べます。!heap -sアンマネージ ヒープの概要が表示されます。これは、メモリ使用量が過剰な場所である可能性があります。

于 2012-07-18T02:05:31.140 に答える