WinDBGからのフォアグラウンド.NETスレッドを判別するにはどうすればよいですか?!threadsコマンドを使用すると、SOS拡張機能はフォアグラウンドスレッドの数を示しますが、どのスレッドの数は示しません。
質問する
2081 次
3 に答える
6
出力の状態フラグは!threads
多くの情報を保持します。フラグが設定されている場合、0x00000200
スレッドはバックグラウンドスレッドです。
SOS for .NET 4およびPSSCOR2に!threadstate
は、特定のフラグ値のテキストを一覧表示するコマンドがあります。それがない場合は、ローターのソースコードとJohnRobbinsによる.NET2.0アプリケーションのデバッグにフラグの概要があります。
于 2009-04-28T11:31:18.540 に答える
6
このリンクで提供されているスレッド状態の値を使用して、スレッドがバックグラウンド スレッドであるかどうかを確認できます。
TS_Background 0x00000200 スレッドはバックグラウンド スレッドです
于 2009-04-28T12:03:05.173 に答える
0
Netextのコマンド!wthreads
は、タイプとステータス情報を表示します。
0:011> !wthreads
Id OSId Address Domain Alloc Start:End COM GC Type Locks Type / Status Last Exception
1 1854 0074f580 00748cd0 02c19308:02c1b2e8 STA Preemptive 0
2 1890 0075ab18 00748cd0 00000000:00000000 MTA Preemptive 0 Background|Finalizer
3 1bac 080ecb98 00748cd0 00000000:00000000 MTA Preemptive 0 Background|Worker
4 ---- 08106068 00748cd0 00000000:00000000 MTA Preemptive 0 Worker|Terminated
5 ---- 0810e988 00748cd0 00000000:00000000 MTA Preemptive 0 Worker|Terminated
6 ---- 080eb1d0 00748cd0 00000000:00000000 MTA Preemptive 0 Worker|Terminated
7 081c 080fcb48 00748cd0 00000000:00000000 MTA Preemptive 0 Background|IOCPort
于 2015-07-30T13:56:57.780 に答える