Enumerazione COR_PRF_MONITOR
Contiene valori utilizzati per specificare il comportamento, le funzionalità o gli eventi ai quali il profiler intende effettuare la sottoscrizione.
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;
Membri
Membro |
Oggetto di descrizione |
---|---|
COR_PRF_MONITOR_NONE |
Nessun flag impostato. |
COR_PRF_MONITOR_FUNCTION_UNLOADS |
Controlla il callback di FunctionUnloadStarted. |
COR_PRF_MONITOR_CLASS_LOADS |
Controlla i callback di ClassLoad e ClassUnload. ![]()
Il comportamento di questo flag è stato modificato in .NET Framework versione 2.0.
|
COR_PRF_MONITOR_MODULE_LOADS |
Controlla i callback di ModuleLoad, ModuleUnload e ModuleAttachedToAssembly. |
COR_PRF_MONITOR_ASSEMBLY_LOADS |
Controlla i callback di AssemblyLoad e AssemblyUnload. |
COR_PRF_MONITOR_APPDOMAIN_LOADS |
Controlla i callback di AppDomainCreation e AppDomainShutdown. |
COR_PRF_MONITOR_JIT_COMPILATION |
Controlla i callback di JITCompilation, JITFunctionPitched e JITInlining. |
COR_PRF_MONITOR_EXCEPTIONS |
Controlla i callback di ExceptionThrown, ExceptionSearch, ExceptionOSHandler, ExceptionUnwind e ExceptionCatcher. |
COR_PRF_MONITOR_GC |
Controlla i callback di GarbageCollectionStarted, GarbageCollectionFinished, MovedReferences, SurvivingReferences, ObjectReferences, ObjectsAllocatedByClass, RootReferences, HandleCreated, HandleDestroyed e FinalizeableObjectQueued. |
COR_PRF_MONITOR_OBJECT_ALLOCATED |
Controlla il callback di ObjectAllocated. |
COR_PRF_MONITOR_THREADS |
Controlla i callback di ThreadCreated, ThreadDestroyed, ThreadAssignedToOSThread e ThreadNameChanged. |
COR_PRF_MONITOR_REMOTING |
Controlla i callback di Remoting. |
COR_PRF_MONITOR_CODE_TRANSITIONS |
Controlla i callback di UnmanagedToManagedTransition e ManagedToUnmanagedTransition. |
COR_PRF_MONITOR_ENTERLEAVE |
Controlla i callback di FunctionEnter, FunctionLeave e FunctionTailcall. |
COR_PRF_MONITOR_CCW |
Controlla i callback di COMClassicVTable. |
COR_PRF_MONITOR_REMOTING_COOKIE |
Controlla se un cookie viene passato ai callback di Remoting. |
COR_PRF_MONITOR_REMOTING_ASYNC |
Controlla se i callback di Remoting monitoreranno gli eventi asincroni. |
COR_PRF_MONITOR_SUSPENDS |
Controlla i callback di RuntimeSuspend, RuntimeResume, RuntimeThreadSuspended e RuntimeThreadResumed. |
COR_PRF_MONITOR_CACHE_SEARCHES |
Controlla i callback di JITCachedFunctionSearch. ![]()
Il comportamento di questo flag è stato modificato in .NET Framework versione 2.0.
|
COR_PRF_MONITOR_CLR_EXCEPTIONS |
Controlla i callback di ExceptionCLRCatcher. |
COR_PRF_MONITOR_ALL |
Attiva tutti gli eventi di callback. |
COR_PRF_ENABLE_REJIT |
Obsoleta. Oggetto ReJIT non supportato. Questo flag non ha alcun effetto. |
COR_PRF_ENABLE_INPROC_DEBUGGING |
Obsoleta. Debug in process non supportato. Questo flag non ha alcun effetto. |
COR_PRF_ENABLE_JIT_MAPS |
Obsoleta. Consente al profiler di ottenere mapping del codice MSIL al codice nativo utilizzando il metodo ICorProfilerInfo::GetILToNativeMapping. In .NET Framework versione 2.0, il runtime tiene sempre traccia dei mapping del codice MSIL al codice nativo, pertanto questo flag sarà considerato sempre impostato. |
COR_PRF_DISABLE_INLINING |
Disabilita tutte le funzionalità inline. |
COR_PRF_DISABLE_OPTIMIZATIONS |
Disabilita tutte le ottimizzazioni del codice. |
COR_PRF_ENABLE_OBJECT_ALLOCATED |
Indica al runtime di notificare al profiler le allocazioni degli oggetti. Questo valore deve essere impostato in fase di inizializzazione, se il profiler richiede che la notifica venga inoltrata con COR_PRF_MONITOR_OBJECT_ALLOCATED. |
COR_PRF_ENABLE_FUNCTION_ARGS |
Attiva la tracciatura degli argomenti tramite FunctionEnter2. |
COR_PRF_ENABLE_FUNCTION_RETVAL |
Attiva la tracciatura dei valori restituiti tramite FunctionLeave2. |
COR_PRF_ENABLE_FRAME_INFO |
Attiva il recupero di un valore ClassID esatto per una funzione generica tramite una chiamata a GetFunctionInfo2 con una struttura COR_PRF_FRAME_INFO restituita da una chiamata a FunctionEnter2, FunctionLeave2 o FunctionTailcall2. |
COR_PRF_ENABLE_STACK_SNAPSHOT |
Attiva le chiamate a DoStackSnapshot. |
COR_PRF_USE_PROFILE_IMAGES |
Fa sì che la ricerca delle immagini native inizi dalle immagini ottimizzate del profiler. Se non viene trovata alcuna immagine ottimizzata del profiler relativa a un determinato assembly, Common Language Runtime ricorre a JIT per l'assembly in questione. |
COR_PRF_DISABLE_TRANSPARENCY_CHECKS_UNDER_FULL_TRUSt |
Disabilita i controlli SecurityTransparent che generalmente si fanno durante la compilazione JIT e il caricamento di classi per gli assembly di totale attendibilità. Può rendere alcune strumentazioni più facile eseguire. |
COR_PRF_ALL |
Maschera per valori di flag validi. |
COR_PRF_MONITOR_IMMUTABLE |
Rappresenta tutti i flag che possono essere impostati solo in fase di inizializzazione. Se si tenta di cambiare uno qualsiasi di questi flag dopo l'inizializzazione, verrà restituito un valore HRESULT che indica un errore. |
Requisiti
Piattaforme: vedere Requisiti di sistema di .NET Framework.
Intestazione: CorProf.idl, CorProf.h
Libreria: CorGuids.lib
Versioni di .NET Framework: 4, 3.5 SP1, 3.5, 3.0 SP1, 3.0, 2.0 SP1, 2.0, 1.1, 1.0