次の方法で共有


ICorDebugController::Stop メソッド

更新 : 2007 年 11 月

プロセスのマネージ コードを実行しているすべてのスレッドで協調停止を実行します。

HRESULT Stop (
    [in] DWORD dwTimeoutIgnored
);

パラメータ

  • dwTimeoutIgnored
    使用されていません。

解説

Stop は、プロセスのマネージ コードを実行しているすべてのスレッドで協調停止を実行します。マネージのみのデバッグ セッションを実行しているときに、アンマネージ スレッドの実行が続行されることがあります (ただし、マネージ コードを呼び出そうとするとブロックされます)。相互運用機能デバッグ セッションを実行しているときは、アンマネージ スレッドも停止されます。dwTimeoutIgnored 値は現在無視され、INFINTE (-1) として処理されます。デッドロックが原因で協調停止に失敗すると、すべてのスレッドが中断され、E_TIMEOUT が返されます。

ms232533.alert_note(ja-jp,VS.90).gifメモ :

デバッグ API では、Stop だけが同期メソッドです。Stop から S_OK が返されると、プロセスが停止します。リスナに停止を通知するためのコールバックは指定されません。プロセスを再開できるようにするには、デバッガが ICorDebugController::Continue を呼び出す必要があります。

デバッガは、停止カウンタを保持します。カウンタが 0 になると、コントローラが再開されます。Stop の呼び出しまたはディスパッチされたコールバックを行うたびに、カウンタが増加します。ICorDebugController::Continue を呼び出すたびにカウンタが減少します。

必要条件

プラットフォーム : 「.NET Framework システム要件」を参照

ヘッダー : CorDebug.idl

ライブラリ : CorGuids.lib

.NET Framework のバージョン : 3.5 SP1、3.5、3.0 SP1、3.0、2.0 SP1、2.0、1.1、1.0

参照

参照

ICorDebugController