Partager via


COR_PRF_MONITOR, énumération

Contient des valeurs qui sont utilisées pour spécifier le comportement, les fonctions ou les événements auxquels le profileur souhaite s'abonner.

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;

Membres

Membre

Description

COR_PRF_MONITOR_NONE

Aucun indicateur n'est défini.

COR_PRF_MONITOR_FUNCTION_UNLOADS

Contrôle le rappel FunctionUnloadStarted.

COR_PRF_MONITOR_CLASS_LOADS

Contrôle les rappels ClassLoad et ClassUnload.

RemarqueRemarque
Le comportement de cet indicateur est modifié dans le .NET Framework version 2.0.

COR_PRF_MONITOR_MODULE_LOADS

Contrôle les rappels ModuleLoad, ModuleUnload et ModuleAttachedToAssembly.

COR_PRF_MONITOR_ASSEMBLY_LOADS

Contrôle les rappels AssemblyLoad et AssemblyUnload.

COR_PRF_MONITOR_APPDOMAIN_LOADS

Contrôle les rappels AppDomainCreation et AppDomainShutdown.

COR_PRF_MONITOR_JIT_COMPILATION

Contrôle les rappels JITCompilation, JITFunctionPitched et JITInlining.

COR_PRF_MONITOR_EXCEPTIONS

Contrôle les rappels ExceptionThrown, ExceptionSearch, ExceptionOSHandler, ExceptionUnwind et ExceptionCatcher.

COR_PRF_MONITOR_GC

Contrôle les rappels GarbageCollectionStarted, GarbageCollectionFinished, MovedReferences, SurvivingReferences, ObjectReferences, ObjectsAllocatedByClass, RootReferences, HandleCreated, HandleDestroyed et FinalizeableObjectQueued.

COR_PRF_MONITOR_OBJECT_ALLOCATED

Contrôle le rappel ObjectAllocated.

COR_PRF_MONITOR_THREADS

Contrôle les rappels ThreadCreated, ThreadDestroyed, ThreadAssignedToOSThread et ThreadNameChanged.

COR_PRF_MONITOR_REMOTING

Contrôle les rappels Remoting.

COR_PRF_MONITOR_CODE_TRANSITIONS

Contrôle les rappels UnmanagedToManagedTransition et ManagedToUnmanagedTransition.

COR_PRF_MONITOR_ENTERLEAVE

Contrôle les rappels FunctionEnter, FunctionLeave et FunctionTailcall.

COR_PRF_MONITOR_CCW

Contrôle les rappels COMClassicVTable.

COR_PRF_MONITOR_REMOTING_COOKIE

Contrôle si un cookie est passé aux rappels d'Remoting

COR_PRF_MONITOR_REMOTING_ASYNC

Contrôle si les rappels d'Remoting vont surveiller des événements asynchrones.

COR_PRF_MONITOR_SUSPENDS

Contrôle les rappels RuntimeSuspend, RuntimeResume, RuntimeThreadSuspended et RuntimeThreadResumed.

COR_PRF_MONITOR_CACHE_SEARCHES

Contrôle les rappels JITCachedFunctionSearch.

RemarqueRemarque
Le comportement de cet indicateur est modifié dans le .NET Framework version 2.0.

COR_PRF_MONITOR_CLR_EXCEPTIONS

Contrôle les rappels ExceptionCLRCatcher.

COR_PRF_MONITOR_ALL

Active tous les événements de rappel.

COR_PRF_ENABLE_REJIT

Non approuvé.

ReJIT n'est pas pris en charge. Cet indicateur n'a aucun effet.

COR_PRF_ENABLE_INPROC_DEBUGGING

Non approuvé.

Le débogage en cours de processus n'est pas pris en charge. Cet indicateur n'a aucun effet.

COR_PRF_ENABLE_JIT_MAPS

Non approuvé.

Permet au profileur d'obtenir des mappages du code MSIL au code natif à l'aide de ICorProfilerInfo::GetILToNativeMapping. Dans le .NET Framework version 2.0, le runtime suit toujours les mappages du code MSIL au code natif ; par conséquent, cet indicateur est toujours considéré pour étant défini.

COR_PRF_DISABLE_INLINING

Désactive toute fonctionnalité inline.

COR_PRF_DISABLE_OPTIMIZATIONS

Désactive toutes les optimisations de code.

COR_PRF_ENABLE_OBJECT_ALLOCATED

Indique au runtime que le profileur peut vouloir être averti de l'allocation d'objets. Cela doit être défini au cours de l'initialisation si le profileur veut être averti avec COR_PRF_MONITOR_OBJECT_ALLOCATED.

COR_PRF_ENABLE_FUNCTION_ARGS

Active le traçage d'arguments à l'aide de FunctionEnter2.

COR_PRF_ENABLE_FUNCTION_RETVAL

Active le traçage des valeurs de retour à l'aide de FunctionLeave2.

COR_PRF_ENABLE_FRAME_INFO

Active la récupération d'un ClassID exact pour une fonction générique, à l'aide d'un appel à GetFunctionInfo2 avec une structure COR_PRF_FRAME_INFO retournée d'un appel à FunctionEnter2, FunctionLeave2 ou FunctionTailcall2.

COR_PRF_ENABLE_STACK_SNAPSHOT

Active les appels à DoStackSnapshot.

COR_PRF_USE_PROFILE_IMAGES

Fait en sorte que la recherche d'images natives recherche des images améliorées par profileur. Si aucune image améliorée par profileur n'est trouvée pour un assembly donné, le Common Language Runtime revient à JIT pour cet assembly.

COR_PRF_DISABLE_TRANSPARENCY_CHECKS_UNDER_FULL_TRUSt

Désactive les vérifications de transparence de sécurité fait normalement pendant la compilation juste-à-temps (JIT) et le chargement de classe pour les assemblys de confiance totale. Cela peut simplifier l'exécution de certaines instrumentations.

COR_PRF_ALL

Masque pour les valeurs d'indicateurs valides.

COR_PRF_MONITOR_IMMUTABLE

Représente tous les indicateurs qui peuvent être définis uniquement pendant l'initialisation. Toute tentative de modification de l'un de ces indicateurs après l'initialisation retourne une valeur HRESULT indiquant un échec.

Configuration requise

Plateformes : consultez Configuration requise du .NET Framework.

En-tête : CorProf.idl, CorProf.h

Bibliothèque : CorGuids.lib

Versions du .NET Framework : 4, 3.5 SP1, 3.5, 3.0 SP1, 3.0, 2.0 SP1, 2.0, 1.1, 1.0

Voir aussi

Autres ressources

Énumérations de profilage