Freigeben über


COR_PRF_MONITOR-Enumeration

Enthält Werte, die zur Angabe von Verhalten, Funktionen oder Ereignissen verwendet werden, die der Profiler abonnieren möchte.

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;

Member

Member

Beschreibungen

COR_PRF_MONITOR_NONE

Es sind keine Flags festgelegt.

COR_PRF_MONITOR_FUNCTION_UNLOADS

Steuert den FunctionUnloadStarted-Rückruf.

COR_PRF_MONITOR_CLASS_LOADS

Steuert den ClassLoad-Rückruf und den ClassUnload-Rückruf.

HinweisHinweis
Dieses Flag verhält sich in .NET Framework, Version 2.0, anders.

COR_PRF_MONITOR_MODULE_LOADS

Steuert die Rückrufe ModuleLoad, ModuleUnload und ModuleAttachedToAssembly.

COR_PRF_MONITOR_ASSEMBLY_LOADS

Steuert den AssemblyLoad-Rückruf und den AssemblyUnload-Rückruf.

COR_PRF_MONITOR_APPDOMAIN_LOADS

Steuert den AppDomainCreation-Rückruf und den AppDomainShutdown-Rückruf.

COR_PRF_MONITOR_JIT_COMPILATION

Steuert die Rückrufe JITCompilation, JITFunctionPitched und JITInlining.

COR_PRF_MONITOR_EXCEPTIONS

Steuert die Rückrufe ExceptionThrown, ExceptionSearch, ExceptionOSHandler, ExceptionUnwind und ExceptionCatcher.

COR_PRF_MONITOR_GC

Steuert die Rückrufe GarbageCollectionStarted, GarbageCollectionFinished, MovedReferences, SurvivingReferences, ObjectReferences, ObjectsAllocatedByClass, RootReferences, HandleCreated, HandleDestroyed und FinalizeableObjectQueued.

COR_PRF_MONITOR_OBJECT_ALLOCATED

Steuert den ObjectAllocated-Rückruf.

COR_PRF_MONITOR_THREADS

Steuert die Rückrufe ThreadCreated, ThreadDestroyed, ThreadAssignedToOSThread und ThreadNameChanged.

COR_PRF_MONITOR_REMOTING

Steuert die Remoting-Rückrufe.

COR_PRF_MONITOR_CODE_TRANSITIONS

Steuert den UnmanagedToManagedTransition-Rückruf und den ManagedToUnmanagedTransition-Rückruf.

COR_PRF_MONITOR_ENTERLEAVE

Steuert die Rückrufe FunctionEnter, FunctionLeave und FunctionTailcall.

COR_PRF_MONITOR_CCW

Steuert die COMClassicVTable-Rückrufe.

COR_PRF_MONITOR_REMOTING_COOKIE

Steuert, ob ein Cookie an Remoting-Rückrufe übergeben wird.

COR_PRF_MONITOR_REMOTING_ASYNC

Steuert, ob Remoting-Rückrufe asynchrone Ereignisse überwachen.

COR_PRF_MONITOR_SUSPENDS

Steuert die Rückrufe RuntimeSuspend, RuntimeResume, RuntimeThreadSuspended und RuntimeThreadResumed.

COR_PRF_MONITOR_CACHE_SEARCHES

Steuert die JITCachedFunctionSearch-Rückrufe.

HinweisHinweis
Dieses Flag verhält sich in .NET Framework, Version 2.0, anders.

COR_PRF_MONITOR_CLR_EXCEPTIONS

Steuert die ExceptionCLRCatcher-Rückrufe.

COR_PRF_MONITOR_ALL

Aktiviert alle Rückrufereignisse.

COR_PRF_ENABLE_REJIT

Diese Option ist veraltet.

ReJIT wird nicht unterstützt. Dieses Flag hat keine Wirkung.

COR_PRF_ENABLE_INPROC_DEBUGGING

Diese Option ist veraltet.

Prozessinternes Debuggen wird nicht unterstützt. Dieses Flag hat keine Wirkung.

COR_PRF_ENABLE_JIT_MAPS

Diese Option ist veraltet.

Ermöglicht es dem Profiler, unter Verwendung von ICorProfilerInfo::GetILToNativeMapping Zuordnungen zwischen MSIL-Code und systemeigenem Code abzurufen. In .NET Framework, Version 2.0, werden Zuordnungen zwischen MSIL-Code und systemeigenem Code von der CLR immer nachverfolgt, daher gilt dieses Flag immer als gesetzt.

COR_PRF_DISABLE_INLINING

Deaktiviert das gesamte Inlining.

COR_PRF_DISABLE_OPTIMIZATIONS

Deaktiviert alle Codeoptimierungen.

COR_PRF_ENABLE_OBJECT_ALLOCATED

Teilt der CLR mit, dass der Profiler u. U. über Objektzuordnungen benachrichtigt werden soll. Dies muss während der Initialisierung festgelegt werden, wenn der Profiler mit COR_PRF_MONITOR_OBJECT_ALLOCATED benachrichtigt werden möchte.

COR_PRF_ENABLE_FUNCTION_ARGS

Aktiviert die Argumentverfolgung mit FunctionEnter2.

COR_PRF_ENABLE_FUNCTION_RETVAL

Aktiviert die Ablaufverfolgung von Rückgabewerten mit FunctionLeave2.

COR_PRF_ENABLE_FRAME_INFO

Aktiviert den Abruf einer exakten ClassID für eine generische Funktion über einen Aufruf von GetFunctionInfo2 mit einer COR_PRF_FRAME_INFO-Struktur, die von einem Aufruf von FunctionEnter2, FunctionLeave2 oder FunctionTailcall2 zurückgegeben wurde.

COR_PRF_ENABLE_STACK_SNAPSHOT

Ermöglicht Aufrufe von DoStackSnapshot.

COR_PRF_USE_PROFILE_IMAGES

Bewirkt, dass die systemeigene Abbildsuche nach durch Profiler verbesserten Abbildern sucht. Wenn für eine Assembly kein durch Profiler verbessertes Bild gefunden wird, greift die Common Language Runtime für die betreffende Assembly wieder auf JIT zurück.

COR_PRF_DISABLE_TRANSPARENCY_CHECKS_UNDER_FULL_TRUSt

Deaktiviert Sicherheitstransparenzprüfungen, die normalerweise während Just-In-Time (JIT)-Kompilierungen und dem Laden von Klassen für vollständig vertrauenswürdige Assemblys gemacht werden. Dies kann die Ausführung einiger Instrumentationsvorgänge erleichtern.

COR_PRF_ALL

Die Maske für gültige Flagwerte.

COR_PRF_MONITOR_IMMUTABLE

Stellt alle Flags dar, die nur während der Initialisierung festgelegt werden können. Beim Versuch, eines dieser Flags nach der Initialisierung zu ändern, wird ein HRESULT-Wert zurückgegeben hat, der einen Fehler angibt.

Anforderungen

Plattformen: siehe Systemanforderungen für .NET Framework.

Header: CorProf.idl, CorProf.h

Bibliothek: CorGuids.lib

.NET Framework-Versionen: 4, 3.5 SP1, 3.5, 3.0 SP1, 3.0, 2.0 SP1, 2.0, 1.1, 1.0

Siehe auch

Weitere Ressourcen

Profilerstellungsenumerationen