次の方法で共有


ICorDebugHeapValue3::GetThreadOwningMonitorLock メソッド

このオブジェクトのモニター ロックを所有するマネージ スレッドを返します。

HRESULT GetThreadOwningMonitorLock (
    [out] ICorDebugThread   **ppThread,
    [out] DWORD              *pAcquisitionCount
);

パラメーター

  • ppThread
    [出力] このオブジェクトのモニター ロックを所有するマネージ スレッド。

  • pAcquisitionCount
    [出力] ロックが所有されていない状態に戻すために必要な、このスレッドでロックを解放する回数。

戻り値

このメソッドは、次の特定の HRESULT と、メソッドの失敗を示す HRESULT エラーも返します。

HRESULT

説明

S_OK

メソッドは正常に終了しました。

S_FALSE

このオブジェクトのモニター ロックを所有しているマネージ スレッドがありません。

解説

マネージ スレッドがこのオブジェクトのモニター ロックを所有している場合、次のようになります。

  • このメソッドは S_OK を返します。

  • スレッド オブジェクトは、スレッドが終了するまで有効です。

このオブジェクトのモニター ロックを所有しているマネージ スレッドがない場合、ppThread と pAcquisitionCount は変更されず、メソッドは S_FALSE を返します。

ppThread または pAcquisitionCount が有効なポインターではない場合、結果は未定義になります。

エラーが発生したために、このオブジェクトのモニター ロックを所有しているスレッド (存在する場合) を特定できない場合、メソッドは、失敗を示す HRESULT を返します。

必要条件

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

ヘッダー: CorDebug.idl、CorDebug.h

ライブラリ: CorGuids.lib

.NET Framework のバージョン: 4

参照

その他の技術情報

デバッグのインターフェイス

デバッグ (アンマネージ API リファレンス)