COR_PRF_MONITOR – výčet
Obsahuje hodnoty, které se používají k určení chování, schopností nebo událostí, ke kterým se profiler chce přihlásit.
Syntax
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_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_MONITOR_CLR_EXCEPTIONS = 0x01000000,
COR_PRF_MONITOR_ALL = 0x0107FFFF,
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_DISABLE_ALL_NGEN_IMAGES = 0x80000000,
COR_PRF_ALL = 0x8FFFFFFF,
COR_PRF_REQUIRE_PROFILE_IMAGE = COR_PRF_USE_PROFILE_IMAGES |
COR_PRF_MONITOR_CODE_TRANSITIONS |
COR_PRF_MONITOR_ENTERLEAVE,
COR_PRF_ALLOWABLE_AFTER_ATTACH = COR_PRF_MONITOR_THREADS |
COR_PRF_MONITOR_MODULE_LOADS |
COR_PRF_MONITOR_ASSEMBLY_LOADS |
COR_PRF_MONITOR_APPDOMAIN_LOADS |
COR_PRF_ENABLE_STACK_SNAPSHOT |
COR_PRF_MONITOR_GC |
COR_PRF_MONITOR_SUSPENDS |
COR_PRF_MONITOR_CLASS_LOADS |
COR_PRF_MONITOR_JIT_COMPILATION,
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_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_USE_PROFILE_IMAGES |
COR_PRF_DISABLE_TRANSPARENCY_CHECKS_UNDER_FULL_TRUST |
COR_PRF_DISABLE_ALL_NGEN_IMAGES
} COR_PRF_MONITOR;
Členové
Následující části obsahují seznam COR_PRF_MONITOR
členů výčtu podle kategorie. Jedná se o následující kategorie:
Nejsou nastavené žádné příznaky.
Člen | Description |
---|---|
COR_PRF_MONITOR_NONE |
Nejsou nastaveny žádné příznaky. |
Příznaky zpětného volání
Člen | Description |
---|---|
COR_PRF_MONITOR_ALL |
Povolí všechny události zpětného volání. |
COR_PRF_MONITOR_APPDOMAIN_LOADS |
Řídí zpětná AppDomainCreation* volání a AppDomainShutdown* v rozhraní ICorProfilerCallback . |
COR_PRF_MONITOR_ASSEMBLY_LOADS |
Řídí zpětná AssemblyLoad* volání a AssemblyUnload* v rozhraní ICorProfilerCallback . |
COR_PRF_MONITOR_CACHE_SEARCHES |
Řídí zpětná JITCachedFunctionSearch* volání v ICorProfilerCallback rozhraní.Chování tohoto příznaku je změněno v rozhraní .NET Framework verze 2.0. |
COR_PRF_MONITOR_CCW |
Řídí zpětná COMClassicVTable* volání v ICorProfilerCallback rozhraní. |
COR_PRF_MONITOR_CLASS_LOADS |
Řídí zpětná ClassLoad* volání a ClassUnload* v rozhraní ICorProfilerCallback . |
COR_PRF_MONITOR_CLR_EXCEPTIONS |
Řídí zpětná ExceptionCLRCatcher* volání v ICorProfilerCallback rozhraní. |
COR_PRF_MONITOR_CODE_TRANSITIONS |
Řídí zpětná volání UnmanagedToManagedTransition a ManagedToUnmanagedTransition v rozhraní ICorProfilerCallback . |
COR_PRF_MONITOR_ENTERLEAVE |
FunctionEnter* FunctionLeave* Řídí , a FunctionTailCall* profilaci globálních statických funkcí. |
COR_PRF_MONITOR_EXCEPTIONS |
Řídí zpětné volání ExceptionThrown a ExceptionSearch* zpětné volání , ExceptionOSHandler* , ExceptionUnwind* a ExceptionCatcher* zpětné volání v rozhraní ICorProfilerCallback . |
COR_PRF_MONITOR_FUNCTION_UNLOADS |
Řídí functionUnloadStarted zpětné volání v ICorProfilerCallback rozhraní. |
COR_PRF_MONITOR_GC |
Řídí volání GarbageCollectionStarted, GarbageCollectionFinished, MovedReferences, MovedReferences2, SurvivingReferences, SurvivingReferences2, ObjectReferences, ObjectsAllocatedByClass, RootReferences, RootReferences2, HandleCreated, HandleDestroyed a FinalizeableObjectQueued zpětná volání v ICorProfilerCallback* rozhraních. Při COR_PRF_MONITOR_GC přidělení je souběžné uvolňování paměti vypnuto. |
COR_PRF_MONITOR_JIT_COMPILATION |
JITCompilation* Řídí zpětné volání , JITFunctionPitched a JITInlining v rozhraní ICorProfilerCallback. |
COR_PRF_MONITOR_MODULE_LOADS |
ModuleLoad* Řídí zpětné volání , ModuleUnload* a ModuleAttachedToAssembly v rozhraní ICorProfilerCallback. |
COR_PRF_MONITOR_OBJECT_ALLOCATED |
Řídí ObjectAllocated zpětné volání v ICorProfilerCallback rozhraní. |
COR_PRF_MONITOR_REMOTING |
Řídí zpětná Remoting* volání v ICorProfilerCallback rozhraní. |
COR_PRF_MONITOR_REMOTING_ASYNC |
Určuje, jestli budou zpětná Remoting* volání monitorovat asynchronní události. |
COR_PRF_MONITOR_REMOTING_COOKIE |
Určuje, jestli se soubor cookie předá zpětná Remoting* volání. |
COR_PRF_MONITOR_SUSPENDS |
RuntimeSuspend* Řídí zpětné volání , RuntimeResume* , RuntimeThreadSuspended a RuntimeThreadResumed v rozhraní ICorProfilerCallback. |
COR_PRF_MONITOR_THREADS |
Řídí Zpětné volání ThreadCreated, ThreadDestroyed, ThreadAssignedToOSThread a ThreadNameChanged v rozhraních ICorProfilerCallback a ICorProfilerCallback2 . |
Příznaky povolení funkcí
Člen | Description |
---|---|
COR_PRF_ENABLE_FRAME_INFO |
Umožňuje načtení přesné ClassID pro obecnou funkci voláním GetFunctionInfo2 metoda s COR_PRF_FRAME_INFO hodnotou vrácenou zpětné volání FunctionEnter2 . |
COR_PRF_ENABLE_FUNCTION_ARGS |
Povolí trasování argumentů pomocí zpětné volání FunctionEnter2 nebo Zpětné volání FunctionEnter3WithInfo a GetFunctionEnter3Info metoda. |
COR_PRF_ENABLE_FUNCTION_RETVAL |
Umožňuje trasování návratových hodnot pomocí zpětného volání FunctionLeave2 nebo Zpětné volání FunctionLeave3WithInfo a GetFunctionLeave3Info metoda. |
COR_PRF_ENABLE_INPROC_DEBUGGING |
Zastaralé V procesu není podporováno ladění. Tento příznak nemá žádný vliv. |
COR_PRF_ENABLE_JIT_MAPS |
Zastaralé Umožňuje profileru získat il-to-nativní mapy pomocí GetILToNativeMapping. Počínaje rozhraním .NET Framework 2.0 modul runtime vždy sleduje il nativní mapy; proto se tento příznak vždy považuje za nastavený. |
COR_PRF_ENABLE_OBJECT_ALLOCATED |
Informuje modul runtime, že profiler může chtít oznámení o přidělení objektů. Tento příznak musí být nastaven během inicializace. Umožňuje profileru následně použít příznak k příjmu COR_PRF_MONITOR_OBJECT_ALLOCATED zpětných volání ObjectAllocated . |
COR_PRF_ENABLE_REJIT |
Umožňuje volání Metod RequestReJIT a RequestRevert . Profiler musí nastavit tento příznak při spuštění. Pokud profiler určuje tento příznak, musí také zadat COR_PRF_DISABLE_ALL_NGEN_IMAGES . |
COR_PRF_ENABLE_STACK_SNAPSHOT |
Umožňuje volání do DoStackSnapshot metoda. |
Příznaky konfigurace
Člen | Description |
---|---|
COR_PRF_DISABLE_ALL_NGEN_IMAGES |
Zabrání načtení všech nativních bitových kopií (včetně imagí s rozšířenými profilerem). Pokud je zadaný příznak i COR_PRF_USE_PROFILE_IMAGES příznak, COR_PRF_DISABLE_ALL_NGEN_IMAGES použije se. |
COR_PRF_DISABLE_INLINING |
Zakáže veškeré vkládání. |
COR_PRF_DISABLE_OPTIMIZATIONS |
Zakáže všechny optimalizace kódu. |
COR_PRF_DISABLE_TRANSPARENCY_CHECKS_UNDER_FULL_TRUST |
Zakáže kontroly transparentnosti zabezpečení, které se obvykle provádějí během kompilace za běhu (JIT) a načítání tříd pro sestavení s úplným vztahem důvěryhodnosti. To může usnadnit provádění některých instrumentací. |
COR_PRF_USE_PROFILE_IMAGES |
Způsobí, že vyhledávání nativních bitových kopií vyhledá image s rozšířenými profilerem. Pokud pro dané sestavení není nalezena žádná image s rozšířeným profilerem, modul CLR (Common Language Runtime) se vrátí k JIT pro dané sestavení. Pokud je zadaný příznak i COR_PRF_DISABLE_ALL_NGEN_IMAGES příznak, COR_PRF_DISABLE_ALL_NGEN_IMAGES použije se. |
Složené příznaky
Člen | Description |
---|---|
COR_PRF_ALL |
Představuje všechny COR_PRF_MONITOR hodnoty příznaku. |
COR_PRF_ALLOWABLE_AFTER_ATTACH |
Představuje všechny COR_PRF_MONITOR příznaky, které lze nastavit po připojení profileru ke spuštěné aplikaci. Oddíl syntaxe označuje jednotlivé příznaky, které se v této bitové masce nacházejí. |
COR_PRF_MONITOR_ALL |
Povolí všechny události zpětného volání. |
COR_PRF_MONITOR_IMMUTABLE |
Představuje všechny COR_PRF_MONITOR příznaky, které lze nastavit pouze během inicializace. Pokus o změnu některého z těchto příznaků po inicializaci vrátí HRESULT hodnotu, která značí selhání. |
COR_PRF_REQUIRE_PROFILE_IMAGE |
Představuje všechny COR_PRF_MONITOR příznaky, které vyžadují image s rozšířeným profilem. |
Poznámky
Hodnota COR_PRF_MONITOR
se používá s metodami ICorProfilerInfo::GetEventMask a ICorProfilerInfo::SetEventMask k definování oznámení událostí, které common language runtime provede profileru.
Požadavky
Platformy: Viz Požadavky na systém.
Záhlaví: CorProf.idl, CorProf.h
Knihovny: CorGuids.lib
Verze rozhraní .NET Framework: K dispozici od verze 1.0
Viz také
Spolupracujte s námi na GitHubu
Zdroj tohoto obsahu najdete na GitHubu, kde můžete také vytvářet a kontrolovat problémy a žádosti o přijetí změn. Další informace najdete v našem průvodci pro přispěvatele.