問題タブ [sos]
For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.
wpf - SOS から Silverlight/WPF の依存関係プロパティを評価するにはどうすればよいですか?
この質問はかなり簡単です。sos を使用して Silverlight アプリケーションでメモリ リークをデバッグしようとしています。クリアする必要があるオブジェクトへの参照を開いているオブジェクトを特定するために、!gcroot を使用して適切な情報を取得できました。しかし、これらの場合、それらはコア UI 要素 (グリッドやストーリーボードなど) になる傾向があり、依存関係プロパティ (名前など) の値を確認する機能がなければ、それらを区別することはできません。!dumpobj を使用して依存関係プロパティを調べようとするのは、私にとって完全な野生のガチョウの追跡です。それらはすべて、相互に参照する静的クラス (つまり、プロパティ) であり、円になってしまいます。依存関係プロパティの単一の実際の値をどこでも見つけることができたことは一度もありませんでした。
私はこれについてかなりグーグルで調べましたが、質問をしている他の人、または答えにつながらない推測しか見つけることができませんでした. http://blogs.msdn.com/tess/archive/2008/09/16/qa-reader-emails-about-net-memory-leaks-and-random-questions.aspxは、回答のないページの 1 つです。
memory - WinDbg から .NET ガベージ コレクションを実行できますか?
管理されたプロセスが大量のメモリを使用している理由を調べています。GC.Collect(3)
実際のメモリ割り当てに集中できるように、WinDbgから実行する方法はありますか?
debugging - .NET CLR アプリケーションをデバッグするときに、評価スタックのローカル変数を表示するにはどうすればよいですか?
Windbg (sos エクステンション付き) を使用しており、クラッシュしたアプリケーションをデバッグしようとしています。例外をスローした呼び出しの IL をダンプすることができ、コードを調べると、評価スタックの内容をダンプできれば必要な情報を取得できたようです。WinDbg & sos で何ができますか?
これが私がしたことです:
- WinDbgを開始しました
- クラッシュしたプロセスに接続
- loadby sos mscorwks (sos 拡張機能をロードするため)
!token2ee theModuleName 0600009a (ここで、theModuleNameはデバッグ中のアプリ (およびアセンブリ) の名前で、9aは Windows エラー報告ツールによって報告されたクラッシュしたメソッドのメソッド オフセットです。次の出力が得られました。
モジュール: 000e2c3c (theApplicationName.exe)
トークン: 0x0600009a
MethodDesc: 000e67c8
名前: MyNamespace.MyClassName.theCulpritFn(MyOtherClass)
JITTED コード アドレス: 0081b1d0!dumpil 00e67c8 (問題のメソッドの IL をダンプした) . これは出力です:
問題は、例外がスローされる前に何がスタックにプッシュされたかを確認する方法があるかどうかです。私が間違っていなければ、例外コンストラクターに渡される引数は、評価スタックのインデックス 0 にあるローカル変数でなければなりません。
PS !clrstack -aを呼び出そうとすると、次のメッセージが表示されました。現在のスレッドはマネージド スレッドではない可能性があります。!threads を実行して、プロセス内のマネージド スレッドの一覧を取得できます。
ありがとう!
c# - スタック オーバーフローのライブ デバッグ
マネージド コードの Windows サービス アプリケーションがあり、マネージド StackOverFlowException が原因で運用環境で時折クラッシュします。adplus をクラッシュ モードで実行し、SoS を使用してクラッシュ ダンプの事後分析を行ったので、これはわかっています。私はwindbgデバッガーをアタッチして、「ハンドルされていない例外に行く」ように設定しました。
私の問題は、マネージド スタックが表示されないか、スレッドに切り替えられないことです。デバッガーが壊れるまでに、それらはすべて取り壊されています。
私は Windbg の専門家ではありません。ライブ システムに Visual Studio をインストールしたり、リモート デバッグを使用したり、そのツールを使用してデバッグしたりすること以外に、問題のあるスレッドからスタック トレースを取得する方法について何か提案はありますか?
これが私がやっていることです。
!スレッド
...
XXXX 11 27c 000000001b2175f0 b220 無効 00000000072c9058:00000000072cad80 0000000019bdd3f0 0 Ukn System.StackOverflowException (0000000000c010d0)
...
この時点で、スレッドが完全に停止していることを示す XXXX ID が表示されます。
version-control - SourceOffsite でフォルダを再帰的にチェックインできない
内部にいくつかのフォルダーを含むフォルダーをチェックインしようとしています。SourceOffsite を使用して再帰的にチェックインするにはどうすればよいですか? 親フォルダーを選択すると、ファイルのみがチェックインされます。
ありがとう
c# - WinDBGで管理された例外の詳細を確認するにはどうすればよいですか?
VS2005 C#コンパイラは、チームの夜間のビルドプロセス中にクラッシュします。WinDBGを使用して接続し、SOS拡張機能をロードし、コールスタックを印刷しますが、例外情報が表示されません。
次のように!PrintExceptionを試しました。
コールスタックの先頭は次のとおりです。
c# - cdb / windbg+.netドキュメントへのリンクを探しています
私はcdbを使い始めたばかりで、とても気に入っています。
cdbの使用に関して見つけた興味深い記事をいくつか見つけてブックマークしましたが、他の人々のリソースを見てみたいと思います。
cdb(windbg)から最大の有用性を引き出すためにどのサイトを使用しますか
windbg - Windbg:SOS.dll:!gcroot:DOMAIN(xxx):HANDLE(Pinned):それは本当にオブジェクトが固定されていることを意味しますか?
SOS.dllWindbg拡張機能に関するドキュメントはまばらなようです。!gcroot <address>を発行した後、次を含むものが表示されます。
「HANDLE(Pinned)」は、このオブジェクトをルート化しているタイプGCHandleType.PinnedのGCHandleがあることを本当に意味しますか?
.net - 32ビットマシンで64ビットダンプを使用してWinDbgで失われました
私はWinDbgの初心者で、64ビットWindows2008ServerのWERReportQueueフォルダーからこのダンプを取得しました。ダンプを調べる必要があり、Windows用のデバッグツールパッケージをインストールした開発者のマシンで調べたいと思います。SOSをロードしようとすると、これまでに見たことのない次のエラーが発生しました。
私のマシンは32ビットのWindows7を実行していますが、これには明らかにFramework64フォルダーがありません。
ここで正しい方向を示すアドバイスが必要です。32ビットマシンで64ビットプロセスからのダンプを調べたい場合はどうすればよいですか?これを行うことは可能ですか?
よろしくお願いします!