BT

InfoQ ホームページ ニュース .NET向けデッドロックのデバッグ

.NET向けデッドロックのデバッグ

ブックマーク

難しい設定などは一切なしで、.NETにはデッドロック検出のサポートがない。通常、デッドロックのチェックはデバッガを取り付けて、各スレッドを検査することでおこなわれる。CGUIデバッグツール、HawkEyeorneliuの作成者であるCorneliu氏が、その代わりになるものを提供してくれた。氏のACorns.Debuggingツールは、それらを再コンパイルすることなく、ほとんどの.NETプログラムに対して機能する。Corneliu氏は、以下のようにまとめている。

  1. いかなる方法や形式による、コードの再コンパイルが必要がない。また、外部ライブラリの参照やコード内の特殊型のロックを使用するために、コードを修正する必要もない。
  2. PDBファイルがない、リリースビルドで動作する。
  3. 実行中のプロセスや以前に取り込んだメモリダンプで動作する。
  4. 複数のスレッドにまたがるデッドロックを検出し、詳細なコールスタックおよびロック使用に関する情報を返す。
  5. スレッドが他のスレッドによって取得されたロックを待機しているデッドロックのみを検出する。
  6. 食事する哲学者の問題および待機やウェイク /チェックやロック時間の組み合わせで作成されたデッドロックは検出しない。
  7. cdb.exe(MicrosoftのWindowsパッケージ向け無償デバッグツールの一部)と外部の依存関係がある。
  8. インストールが全く必要ない。xcopy開発。
  9. そして何よりも、無償である(ソースコードはまもなく公開される予定)

並列プログラミングを始めて間もない人向けに、Corneliu氏はデッドロックの簡潔な導入とプログラム結果の解釈(リンク)に関する解説を提供している。

ACorns.Debugging.FindDeadlock.1.0.1.zip (ZIP)はMicrosoftのDebugging Tools for Windows(リンク)に依存している。

原文はこちらです:http://www.infoq.com/news/2008/08/ACorns.Debugging

この記事に星をつける

おすすめ度
スタイル

こんにちは

コメントするには InfoQアカウントの登録 または が必要です。InfoQ に登録するとさまざまなことができます。

アカウント登録をしてInfoQをお楽しみください。

HTML: a,b,br,blockquote,i,li,pre,u,ul,p

コミュニティコメント

HTML: a,b,br,blockquote,i,li,pre,u,ul,p

HTML: a,b,br,blockquote,i,li,pre,u,ul,p

BT

あなたのプロファイルは最新ですか?プロフィールを確認してアップデートしてください。

Eメールを変更すると確認のメールが配信されます。

会社名:
役職:
組織規模:
国:
都道府県:
新しいメールアドレスに確認用のメールを送信します。このポップアップ画面は自動的に閉じられます。