2011-01-27 3 views
9

Visual Studioですべてのスレッドの呼び出しスタックをダンプまたは検索するにはどうすればよいですか?私たちにはデバッグするサーバープロセスがあり、数百のスレッドが実行されているので、各スレッドを手動でチェックするのは難しいはずです。Visual Studioのすべてのスレッドの呼び出しスタックをダンプまたは検索する方法

私はgdbの "スレッド適用"がこの種のことを行うことができると知っています。だから私は、Visual Studioのデバッガで利用できる同様のものがあるのだろうかと思っていました。

また、Visual Studio 2005を使用していましたので、VS 2005のソリューションを提供してください(すべての呼び出しスタックの検索はVS 2010で提供されています...)。

答えて

2

その後、私はWinDbgのを使って答えを見つけ、

まず

をout.txtをするために、すべてのコールスタックをダンプするには、次のコマンドを使用して、たとえば、VSのデバッグセッションでmyapp.dmp

をミニダンプを保存

CDB -zc:\ myapp.dmp -logo out.txtを-lines -c "〜*キロバイト; Q" -yc:\記号

14

私はちょうどまた、VS2005で、同じ問題を抱えていました。私が上でこれを見つけた

を Debug.ListCallStack/AllThreads: http://blogs.msdn.com/b/greggm/archive/2005/08/02/446899.aspx

+0

良いが、それは唯一の印刷には思わ警告されるVSのオープンコマンドウィンドウをデバッグしている間 とコマンドを使用します。私は簡単な解決策を見つけました管理されたIDを持つスレッドを作成します。純粋なネイティブスレッドは含まれません。 – Weeble

+0

Hmmm。私はそこに間違っていると思っていますが、初めてスレッドのすべてを印刷しなかった理由はわかりません... – Weeble

+1

コマンドウィンドウが消えた場合は、その他のウィンドウ - >コマンドウィンドウ –

関連する問題