次の方法で共有


IDebugThread2

このインターフェイスは、プログラムで実行されているスレッドを表します。

構文

IDebugThread2 : IUnknown

実装側の注意

デバッグ エンジン (DE) では、このインターフェイスを実装して、1 つのプログラムの実行スレッドを表します。

呼び出し元に関する注意事項

現在アクティブなスレッドを表すこのインターフェイスを取得するには、GetThread を呼び出します。

このインターフェイスは、ブレークポイント要求の作成にも使用されます (BP_REQUEST_INFO を参照してください)。

このインターフェイスは、バインドまたはエラー ブレークポイントを解決するときにも返されます (BP_RESOLUTION_INFOBP_ERROR_RESOLUTION_INFO を参照してください)。

Vtable 順序のメソッド

次の表に、IDebugThread2 のメソッドを示します。

メソッド 説明
EnumFrameInfo このスレッドのスタック フレームのリストを取得します。
GetName スレッドの名前を取得します。
SetThreadName スレッドの名前を設定します。
GetProgram スレッドが実行されているプログラムを取得します。
CanSetNextStatement 指定したスタック フレームとコード コンテキストに次のステートメントを設定できるかどうかを判別します。
SetNextStatement 指定されたスタック フレームとコード コンテキストに次のステートメントを設定します。
GetThreadId システム スレッドの識別子を取得します。
[中断] スレッドを中断します。
再開 スレッドを再開します。
GetThreadProperties スレッドについて記述されたプロパティを取得します。
GetLogicalThread この物理スレッドに関連付けられている論理スレッドを取得します。

解説

複数のプログラムで 1 つの物理スレッドを実行することができるため、複数のプログラムの複数の IDebugThread2 が同じ物理スレッドを表すことがあります。

ブレークポイントまたは例外が発生した場合、呼び出し元の Event によってイベントが送信されます。 このメソッドの引数の 1 つは、現在のスレッドを表す IDebugThread2 インターフェイスです。 EnumFrameInfo は、現在のスタック フレームの IDebugStackFrame2 インターフェイスを取得するために使用されます。

要件

ヘッダー: msdbg.h

名前空間: Microsoft.VisualStudio.Debugger.Interop

アセンブリ: Microsoft.VisualStudio.Debugger.Interop.dll

関連項目