次の方法で共有


ICorProfilerCallback::COMClassicVTableCreated メソッド

指定した IID およびクラスの COM 相互運用 vtable が作成されたことをプロファイラーに通知します。

HRESULT COMClassicVTableCreated(
    [in] ClassID wrappedClassId,
    [in] REFGUID implementedIID,
    [in] void    *pVTable,
    [in] ULONG   cSlots);

パラメーター

  • wrappedClasId
    [入力] vtable が作成されたクラスの ID。

  • implementedIID
    [入力] クラスによって実装されるインターフェイスの ID。 インターフェイスが内部専用の場合、この値は NULL の可能性があります。

  • pVTable
    [入力] vtable の先頭へのポインター。

  • cSlots
    [入力] vtable 内のスロット数。

解説

スタックがガベージ コレクションを許可する状態ではない可能性があり、プリエンプティブなガベージ コレクションを有効にできないため、このメソッドの実装でプロファイラーをブロックしないでください。 プロファイラーで実装をブロックした場合にガベージ コレクションを試みると、このコールバックが返されるまでランタイムがガベージ コレクションをブロックします。

プロファイラーによるこのメソッドの実装ではマネージ コードを呼び出さないようにする必要があります。呼び出すと、マネージ メモリの割り当てが実行されます。

必要条件

プラットフォーム: 「.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

参照

参照

ICorProfilerCallback インターフェイス

ICorProfilerCallback::COMClassicVTableDestroyed メソッド