次の方法で共有


COR_PRF_MONITOR 列挙型

プロファイラーがサブスクライブする動作、機能、またはイベントを指定するために使用される値を含みます。

typedef enum {
        
    COR_PRF_MONITOR_NONE                = 0x00000000,
    COR_PRF_MONITOR_FUNCTION_UNLOADS    = 0x00000001,
    COR_PRF_MONITOR_CLASS_LOADS         = 0x00000002,
    COR_PRF_MONITOR_MODULE_LOADS        = 0x00000004,
    COR_PRF_MONITOR_ASSEMBLY_LOADS      = 0x00000008,
    COR_PRF_MONITOR_APPDOMAIN_LOADS     = 0x00000010,
    COR_PRF_MONITOR_JIT_COMPILATION     = 0x00000020,
    COR_PRF_MONITOR_EXCEPTIONS          = 0x00000040,
    COR_PRF_MONITOR_GC                  = 0x00000080,
    COR_PRF_MONITOR_OBJECT_ALLOCATED    = 0x00000100,
    COR_PRF_MONITOR_THREADS             = 0x00000200,
    COR_PRF_MONITOR_REMOTING            = 0x00000400,
    COR_PRF_MONITOR_CODE_TRANSITIONS    = 0x00000800,
    COR_PRF_MONITOR_ENTERLEAVE          = 0x00001000,
    COR_PRF_MONITOR_CCW                 = 0x00002000,
    COR_PRF_MONITOR_REMOTING_COOKIE     =
        0x00004000 | COR_PRF_MONITOR_REMOTING,
    COR_PRF_MONITOR_REMOTING_ASYNC      =
        0x00008000 | COR_PRF_MONITOR_REMOTING,
    COR_PRF_MONITOR_SUSPENDS            = 0x00010000,
    COR_PRF_MONITOR_CACHE_SEARCHES      = 0x00020000,
    COR_PRF_MONITOR_CLR_EXCEPTIONS      = 0x01000000,
    COR_PRF_MONITOR_ALL                 = 0x0107FFFF,
    COR_PRF_ENABLE_REJIT                = 0x00040000,
    COR_PRF_ENABLE_INPROC_DEBUGGING     = 0x00080000,
    COR_PRF_ENABLE_JIT_MAPS             = 0x00100000,
    COR_PRF_DISABLE_INLINING            = 0x00200000,
    COR_PRF_DISABLE_OPTIMIZATIONS       = 0x00400000,
    COR_PRF_ENABLE_OBJECT_ALLOCATED     = 0x00800000,
    COR_PRF_ENABLE_FUNCTION_ARGS        = 0x02000000,
    COR_PRF_ENABLE_FUNCTION_RETVAL      = 0x04000000,
    COR_PRF_ENABLE_FRAME_INFO           = 0x08000000,
    COR_PRF_ENABLE_STACK_SNAPSHOT       = 0x10000000,
    COR_PRF_USE_PROFILE_IMAGES          = 0x20000000,
    COR_PRF_DISABLE_TRANSPARENCY_CHECKS_UNDER_FULL_TRUST = 0x40000000,
    COR_PRF_ALL                         = 0x3FFFFFFF,
    COR_PRF_MONITOR_IMMUTABLE           =
        COR_PRF_MONITOR_CODE_TRANSITIONS |
        COR_PRF_MONITOR_REMOTING |
        COR_PRF_MONITOR_REMOTING_COOKIE |
        COR_PRF_MONITOR_REMOTING_ASYNC |
        COR_PRF_MONITOR_GC |
        COR_PRF_ENABLE_REJIT |
        COR_PRF_ENABLE_INPROC_DEBUGGING |
        COR_PRF_ENABLE_JIT_MAPS |
        COR_PRF_DISABLE_OPTIMIZATIONS |
        COR_PRF_DISABLE_INLINING |
        COR_PRF_ENABLE_OBJECT_ALLOCATED |
        COR_PRF_ENABLE_FUNCTION_ARGS |
        COR_PRF_ENABLE_FUNCTION_RETVAL |
        COR_PRF_ENABLE_FRAME_INFO |
        COR_PRF_ENABLE_STACK_SNAPSHOT |
        COR_PRF_USE_PROFILE_IMAGES
    
} COR_PRF_MONITOR;

メンバー

メンバー

説明

COR_PRF_MONITOR_NONE

フラグは設定されません。

COR_PRF_MONITOR_FUNCTION_UNLOADS

FunctionUnloadStarted コールバックを制御します。

COR_PRF_MONITOR_CLASS_LOADS

ClassLoad コールバックおよび ClassUnload コールバックを制御します。

メモメモ
このフラグの動作は、.NET Framework Version 2.0 で変更されています。

COR_PRF_MONITOR_MODULE_LOADS

ModuleLoadModuleUnload、および ModuleAttachedToAssembly の各コールバックを制御します。

COR_PRF_MONITOR_ASSEMBLY_LOADS

AssemblyLoad コールバックおよび AssemblyUnload コールバックを制御します。

COR_PRF_MONITOR_APPDOMAIN_LOADS

AppDomainCreation コールバックおよび AppDomainShutdown コールバックを制御します。

COR_PRF_MONITOR_JIT_COMPILATION

JITCompilationJITFunctionPitched、および JITInlining の各コールバックを制御します。

COR_PRF_MONITOR_EXCEPTIONS

ExceptionThrownExceptionSearchExceptionOSHandlerExceptionUnwind、および ExceptionCatcher の各コールバックを制御します。

COR_PRF_MONITOR_GC

GarbageCollectionStartedGarbageCollectionFinishedMovedReferencesSurvivingReferencesObjectReferencesObjectsAllocatedByClassRootReferencesHandleCreatedHandleDestroyed、および FinalizeableObjectQueued の各コールバックを制御します。

COR_PRF_MONITOR_OBJECT_ALLOCATED

ObjectAllocated コールバックを制御します。

COR_PRF_MONITOR_THREADS

ThreadCreatedThreadDestroyedThreadAssignedToOSThread、および ThreadNameChanged の各コールバックを制御します。

COR_PRF_MONITOR_REMOTING

Remoting コールバックを制御します。

COR_PRF_MONITOR_CODE_TRANSITIONS

UnmanagedToManagedTransition コールバックおよび ManagedToUnmanagedTransition コールバックを制御します。

COR_PRF_MONITOR_ENTERLEAVE

FunctionEnterFunctionLeave、および FunctionTailcall の各コールバックを制御します。

COR_PRF_MONITOR_CCW

COMClassicVTable コールバックを制御します。

COR_PRF_MONITOR_REMOTING_COOKIE

Cookie を Remoting コールバックに渡すかどうかを制御します。

COR_PRF_MONITOR_REMOTING_ASYNC

Remoting コールバックが非同期イベントを監視するかどうかを制御します。

COR_PRF_MONITOR_SUSPENDS

RuntimeSuspendRuntimeResumeRuntimeThreadSuspended、および RuntimeThreadResumed の各コールバックを制御します。

COR_PRF_MONITOR_CACHE_SEARCHES

JITCachedFunctionSearch コールバックを制御します。

メモメモ
このフラグの動作は、.NET Framework Version 2.0 で変更されています。

COR_PRF_MONITOR_CLR_EXCEPTIONS

ExceptionCLRCatcher コールバックを制御します。

COR_PRF_MONITOR_ALL

すべてのコールバック イベントを有効にします。

COR_PRF_ENABLE_REJIT

使用は推奨されていません。

ReJIT はサポートされていません。 このフラグは無効です。

COR_PRF_ENABLE_INPROC_DEBUGGING

使用は推奨されていません。

インプロセス デバッグはサポートされていません。 このフラグは無効です。

COR_PRF_ENABLE_JIT_MAPS

使用は推奨されていません。

プロファイラーが ICorProfilerInfo::GetILToNativeMapping を使用して MSIL からネイティブへの割り当てを取得できるようにします。 .NET Framework Version 2.0 では、ランタイムは常に MSIL からネイティブへの割り当てを追跡します。そのため、このフラグは常に設定されていると見なされます。

COR_PRF_DISABLE_INLINING

すべてのインライン展開を無効にします。

COR_PRF_DISABLE_OPTIMIZATIONS

コードの最適化をすべて無効にします。

COR_PRF_ENABLE_OBJECT_ALLOCATED

プロファイラーがオブジェクトの割り当て通知を必要としていることをランタイムに示します。 COR_PRF_MONITOR_OBJECT_ALLOCATED を指定してプロファイラーに通知する必要がある場合は、初期化中にこのフィールドを設定する必要があります。

COR_PRF_ENABLE_FUNCTION_ARGS

FunctionEnter2 を使用した引数トレースを有効にします。

COR_PRF_ENABLE_FUNCTION_RETVAL

FunctionLeave2 を使用した戻り値のトレースを有効にします。

COR_PRF_ENABLE_FRAME_INFO

FunctionEnter2FunctionLeave2、または FunctionTailcall2 の呼び出しから返される COR_PRF_FRAME_INFO 構造体を使用して GetFunctionInfo2 を呼び出すことで、ジェネリック関数の正確な ClassID を取得できるようにします。

COR_PRF_ENABLE_STACK_SNAPSHOT

DoStackSnapshot の呼び出しを有効にします。

COR_PRF_USE_PROFILE_IMAGES

ネイティブ イメージ検索でプロファイラーが拡張したイメージを検索します。 指定のアセンブリでプロファイラーが拡張したイメージが見つからなかった場合は、共通言語ランタイムはそのアセンブリの JIT まで戻ります。

COR_PRF_DISABLE_TRANSPARENCY_CHECKS_UNDER_FULL_TRUSt

完全信頼アセンブリに対して JIT (Just-In-Time) コンパイルおよびクラスの読み込み時に通常行われる透過的セキュリティ チェックを無効にします。 これにより、一部のインストルメンテーションの実行が簡単になります。

COR_PRF_ALL

有効なフラグ値のマスク。

COR_PRF_MONITOR_IMMUTABLE

初期化中にのみ設定できるすべてのフラグを表します。 初期化後にこれらのフラグのいずれかを変更しようとすると、エラーを示す HRESULT 値が返されます。

必要条件

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

参照

その他の技術情報

列挙体のプロファイリング