ICorProfilerInfo2::GetThreadStaticAddress メソッド
指定したスレッドのスコープ内にある、指定したスレッド内静的フィールドのアドレスを取得します。
構文
HRESULT GetThreadStaticAddress(
[in] ClassID classId,
[in] mdFieldDef fieldToken,
[in] ThreadID threadId,
[out] void **ppAddress);
パラメーター
classId
[in] 要求されたスレッド静的フィールドを含むクラスの ID。
fieldToken
[in] 要求されたスレッド静的フィールドのメタデータ トークン。
threadId
[in] 要求された静的フィールドのスコープであるスレッドの ID。
ppAddress
[out] 指定されたスレッド内の静的フィールドのアドレスへのポインター。
解説
GetThreadStaticAddress
メソッドは次のいずれかを返す必要があります。
指定されたコンテキストで、指定された静的フィールドにアドレスが割り当てられていない場合は CORPROF_E_DATAINCOMPLETE HRESULT。
ガベージ コレクション ヒープ内に存在する可能性があるオブジェクトのアドレス。 これらのアドレスはガベージ コレクション後に無効になることがあるため、ガベージ コレクション後にプロファイラーではそれらが有効であると想定してはなりません。
クラスのクラス コンストラクターが完了する前に、GetThreadStaticAddress
では、すべての静的フィールドに対して CORPROF_E_DATAINCOMPLETE が返されます。ただし、一部の静的フィールドは既に初期化されており、ガベージ コレクション オブジェクトをルート化する場合があります。
必要条件
:「システム要件」を参照してください。
ヘッダー : CorProf.idl、CorProf.h
ライブラリ: CorGuids.lib
.NET Framework のバージョン: 2.0 以降で使用可能
関連項目
.NET