スレッドデバッグツール

インテル スレッド チェッカー
うーん、使ってみたさMAX。

スレッドのパフォーマンスは、コードを少し書けば計測できるのではないだろうか?

スレッドのコードを書いていくと、僕の場合はこういう風になることが多い。

  • 何かイベントを待つ。
  • 発生したイベントに応じた処理を行う。

これの繰り返しだ。

bool runnable = true;
while ( runnable )
{
DWORD dwResult = WaitForMultipleObjects( 2, handles, FALSE, INFINITE );
runnable = DoSomething( dwResult );
}

こんな感じ。こうすると、実行分が二つしかないので、この二つの時間を計ってやれば、スレッドの暇さと忙しさが分かる。これをスレッド全部に対して行えば、実行時間の比率くらい分かるだろう。・・・あまりデバッグに関係ないですね、これは。