方法 : 高パフォーマンス クラスタ上でデバッグする

更新 : 2007 年 11 月

このトピックの内容は、次の製品に該当します。

Edition

Visual Basic

C#

C++

Web Developer

Express

トピック該当なし トピック該当なし トピック該当なし トピック該当なし

Standard

トピック該当なし

トピック該当なし

トピック該当なし

トピック該当なし

Pro/Team

トピック該当なし

トピック該当

トピック該当

トピック該当なし

表の凡例 :

トピック該当

対象

トピック該当なし

該当なし

トピックは該当しますが、コマンドは既定では非表示です

既定で非表示のコマンド

高パフォーマンス クラスタ上でのマルチプロセス プログラムのデバッグは、リモート マシン上での通常のプログラムのデバッグと似ています。ただし、追加の考慮事項がいくつかあります。リモート クラスタのデバッグのセットアップ要件については、「方法 : リモート クラスタ アプリケーションをデバッグする」を参照してください。一般的なリモート セットアップ要件については、「リモート デバッグのセットアップ」を参照してください。

高パフォーマンス クラスタ上でデバッグするときは、リモート デバッグに使用できる Visual Studio のデバッグ ウィンドウとデバッグ手法をすべて使用できます。ただし、リモートでデバッグするため、外部のコンソール ウィンドウは使用できません。

[スレッド] ウィンドウと [プロセス] ウィンドウは、並列アプリケーションをデバッグする際に特に役立ちます。これらのウィンドウの使い方に関するヒントについては、「方法 : [プロセス] ウィンドウを使用する」および「方法 : [スレッド] ウィンドウを使用する」を参照してください。

以下の手順では、高パフォーマンス クラスタ上でのデバッグに特に役立つ手法を示します。

並列アプリケーションをデバッグするときは、特定のスレッド、プロセス、またはコンピュータにブレークポイントを設定することが必要になる場合があります。これを行うには、通常のブレークポイントを作成してから、ブレークポイント フィルタを追加します。

[ブレークポイントのフィルタ] ダイアログ ボックスを開くには

  1. ソース ウィンドウ、[逆アセンブル] ウィンドウ、[呼び出し履歴] ウィンドウ、または [ブレークポイント] ウィンドウでブレークポイント グリフを右クリックします。

  2. ショートカット メニューの [フィルタ] をクリックします。このオプションは、最上位レベルまたは [ブレークポイント] のサブメニューとして表示されます。

特定のコンピュータにブレークポイントを設定するには

  1. [プロセス] ウィンドウでコンピュータ名を確認します。

  2. ブレークポイントを選択し、前記の手順に従って [ブレークポイントのフィルタ] ダイアログ ボックスを開きます。

  3. [ブレークポイントのフィルタ] ダイアログ ボックスに次の文字列を入力します。

    MachineName =yourmachinename

    より複雑なフィルタを作成する場合は、AND 演算子 (&)、OR 演算子 (||)、NOT 演算子 (!)、およびかっこを使って句を結合できます。

  4. [OK] をクリックします。

特定のプロセスにブレークポイントを設定するには

  1. [プロセス] ウィンドウで、プロセス名またはプロセス ID 番号を取得します。

  2. ブレークポイントを選択し、最初の手順に従って [ブレークポイントのフィルタ] ダイアログ ボックスを開きます。

  3. [ブレークポイントのフィルタ] ダイアログ ボックスに次の文字列を入力します。

    ProcessName = yourprocessname

    または

    ProcessID =yourprocessIDnumber

    より複雑なフィルタを作成する場合は、AND 演算子 (&)、OR 演算子 (||)、NOT 演算子 (!)、およびかっこを使って句を結合できます。

  4. [OK] をクリックします。

特定のスレッドにブレークポイントを設定するには

  1. [スレッド] ウィンドウで、スレッド名またはスレッド ID 番号を取得します。

  2. ブレークポイントを選択し、最初の手順に従って [ブレークポイントのフィルタ] ダイアログ ボックスを開きます。

  3. [ブレークポイントのフィルタ] ダイアログ ボックスに次の文字列を入力します。

    ThreadName =yourthreadname

    または

    ThreadID =yourthreadIDnumber

    より複雑なフィルタを作成する場合は、AND 演算子 (&)、OR 演算子 (||)、NOT 演算子 (!)、およびかっこを使って句を結合できます。

  4. [OK] をクリックします。

使用例

次の例は、marvin というコンピュータと fourier1 というスレッドを対象とするブレークポイントのフィルタを作成する方法を示しています。

(MachineName = marvin) & (ThreadName = fourier1)

参照

処理手順

方法 : リモート クラスタ アプリケーションをデバッグする

方法 : [プロセス] ウィンドウを使用する

方法 : [スレッド] ウィンドウを使用する

方法 : ブレークポイント フィルタを指定する

概念

スレッドとプロセス

その他の技術情報

マルチスレッド アプリケーションのデバッグ

リモート デバッグのセットアップ