次の方法で共有


ICorProfilerInfo2::GetRVAStaticAddress メソッド

指定した RVA (Relative Virtual Address) 静的フィールドのアドレスを取得します。

HRESULT GetRVAStaticAddress(
    [in] ClassID classId,
    [in] mdFieldDef fieldToken,
    [out] void **ppAddress);

パラメーター

  • classId
    [入力] 要求された RVA 静的フィールドを含むクラスの ID。

  • fieldToken
    [入力] 要求された RVA 静的フィールドのメタデータ トークン。

  • ppAddress
    [出力] RVA 静的フィールドのアドレスへのポインター。

解説

GetRVAStaticAddress メソッドは次のいずれかの結果を返します。

  • 指定した静的フィールドに、指定したコンテキストでのアドレスが割り当て済みでない場合は、CORPROF_E_DATAINCOMPLETE HRESULT。

  • ガベージ コレクション ヒープ内のオブジェクトのアドレス。 これらのアドレスはガベージ コレクションの後に無効になることがあるため、ガーベジ・コレクション後は、プロファイラーがこれらのアドレスを有効であると見なさないようにする必要があります。

クラスのクラス コンストラクターが完了する前に、GetRVAStaticAddress はすべての静的フィールドについて CORPROF_E_DATAINCOMPLETE を返します。ただし、一部の静的フィールドは初期化済みで、ガベージ コレクション オブジェクトをルーティングしていることがあります。

必要条件

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

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

ライブラリ: CorGuids.lib

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

参照

参照

ICorProfilerInfo インターフェイス

ICorProfilerInfo2 インターフェイス