Sdílet prostřednictvím


ICorProfilerCallback – rozhraní

Poskytuje metody, které modul CLR (Common Language Runtime) používá k upozornění profileru kódu při událostech, ke kterým se profiler přihlásil.

Methods

Metoda Description
AppDomainCreationFinished – metoda Upozorní profiler, že byla vytvořena doména aplikace.
AppDomainCreationStarted – metoda Upozorní profiler, že se vytváří doména aplikace.
AppDomainShutdownFinished – metoda Upozorní profiler, že doména aplikace byla uvolněna z procesu.
AppDomainShutdownStarted – metoda Upozorní profiler, že se doména aplikace odčítá z procesu.
AssemblyLoadFinished – metoda Upozorní profiler, že sestavení dokončilo načítání.
AssemblyLoadStarted – metoda Upozorní profiler, že se načítá sestavení.
AssemblyUnloadFinished – metoda Upozorní profiler, že bylo uvolněno sestavení.
AssemblyUnloadStarted – metoda Upozorní profiler, že je sestavení uvolněno.
ClassLoadFinished – metoda Upozorní profiler, že třída dokončila načítání.
ClassLoadStarted – metoda Upozorní profiler, že se načítá třída.
ClassUnloadFinished – metoda Upozorní profiler, že třída dokončila uvolnění.
ClassUnloadStarted – metoda Upozorní profiler, že je třída uvolněna.
COMClassicVTableCreated – metoda Upozorní profiler, že byl vytvořen obálka RCW (runtime callable wrapper) pro zadaný IID a třídu.
COMClassicVTableDestroyed – metoda Upozorní profiler, že je zničena analýza RCW.
ExceptionCatcherEnter – metoda Upozorní profiler, že ovládací prvek se předává příslušnému catch bloku.
ExceptionCatcherLeave – metoda Upozorní profiler, že ovládací prvek se předává z příslušného catch bloku.
ExceptionCLRCatcherExecute – metoda Zastaralé v rozhraní .NET Framework verze 2.0.
ExceptionCLRCatcherFound – metoda Zastaralé v rozhraní .NET Framework 2.0.
ExceptionOSHandlerEnter – metoda Není implementováno. Profiler, který potřebuje nespravované informace o výjimce, musí tyto informace získat jinými prostředky.
ExceptionOSHandlerLeave – metoda Není implementováno. Profiler, který potřebuje nespravované informace o výjimce, musí tyto informace získat jinými prostředky.
ExceptionSearchCatcherFound – metoda Upozorní profiler, že fáze vyhledávání zpracování výjimek se nachází obslužnou rutinu pro výjimku, která byla vyvolán.
ExceptionSearchFilterEnter – metoda Upozorní profiler, že se spouští filtr uživatele.
ExceptionSearchFilterLeave – metoda Upozorní profiler, že se právě dokončilo spuštění filtru uživatele.
ExceptionSearchFunctionEnter – metoda Upozorní profiler, že fáze vyhledávání zpracování výjimek zadala funkci.
ExceptionSearchFunctionLeave – metoda Upozorní profiler, že fáze vyhledávání zpracování výjimek dokončila vyhledávání funkce.
ExceptionThrown – metoda Upozorní profiler, že došlo k výjimce.
ExceptionUnwindFinallyEnter – metoda Upozorní profiler, že fáze odvíjení zpracování výjimek zadává klauzuli obsaženou finally v zadané funkci.
ExceptionUnwindFinallyLeave – metoda Upozorní profiler, že fáze odvíjení zpracování výjimek opustila finally klauzuli.
ExceptionUnwindFunctionEnter – metoda Upozorní profiler, že fáze odvíjení zpracování výjimek zadala funkci.
ExceptionUnwindFunctionLeave – metoda Upozorní profiler, že fáze odvíjení zpracování výjimek dokončila odvíjení funkce.
FunctionUnloadStarted – metoda Upozorní profiler, že modul runtime začal s uvolněním funkce.
Initialize – metoda Volá se k inicializaci profileru při každém spuštění nové aplikace CLR.
JITCachedFunctionSearchFinished – metoda Upozorní profiler, že vyhledávání bylo dokončeno pro funkci, která byla zkompilována dříve pomocí NGen.exe.
JITCachedFunctionSearchStarted – metoda Upozorní profiler, že vyhledávání spustilo funkci, která byla zkompilována dříve pomocí NGen.exe.
JITCompilationFinished – metoda Upozorní profiler, že kompilátor JIT dokončil kompilaci funkce.
JITCompilationStarted – metoda Upozorní profiler, že kompilátor JIT (just-in-time) začal kompilovat funkci.
JITFunctionPitched – metoda Upozorní profiler, že z paměti byla odebrána funkce, která byla zkompilována JIT.
JITInlining – metoda Upozorní profiler, že kompilátor JIT chystá vložit funkci v souladu s jinou funkcí.
ManagedToUnmanagedTransition – metoda Upozorní profiler, že došlo k přechodu ze spravovaného kódu na nespravovaný kód.
ModuleAttachedToAssembly – metoda Upozorní profiler, že modul je připojen k nadřazené sestavení.
ModuleLoadFinished – metoda Upozorní profiler, že modul dokončil načítání.
ModuleLoadStarted – metoda Upozorní profiler, že se načítá modul.
ModuleUnloadFinished – metoda Upozorní profiler, že modul dokončil uvolnění.
ModuleUnloadStarted – metoda Upozorní profiler, že se modul uvolní.
MovedReferences – metoda Upozorní profiler na odkazy na objekty, které byly přesunuty během uvolňování paměti.
ObjectAllocated – metoda Upozorní profiler, že paměť v haldě byla přidělena objektu.
ObjectReferences – metoda Upozorní profiler na objekty v paměti odkazované zadaným objektem.
ObjectsAllocatedByClass – metoda Upozorní profiler o počtu instancí každé zadané třídy, které byly vytvořeny od předchozí uvolňování paměti.
RemotingClientInvocationFinished – metoda Upozorní profiler, že se na klientovi spustilo volání vzdálené komunikace.
RemotingClientInvocationStarted – metoda Upozorní profiler, že se spustilo volání vzdálené komunikace.
RemotingClientReceivingReply – metoda Upozorní profiler, že se dokončila část vzdálené komunikace na straně serveru a klient teď přijímá odpověď a chystá se ji zpracovat.
RemotingClientSendingMessage – metoda Upozorní profiler, že klient odesílá požadavek na server.
RemotingServerInvocationReturned – metoda Upozorní profiler, že proces dokončil vyvolání metody v reakci na žádost o vyvolání vzdálené metody.
RemotingServerInvocationStarted – metoda Upozorní profiler, že proces vyvolá metodu v reakci na žádost o vyvolání vzdálené metody.
RemotingServerReceivingMessage – metoda Upozorní profiler, že proces přijímá volání vzdálené metody nebo žádost o aktivaci.
RemotingServerSendingReply – metoda Upozorní profiler, že proces dokončil zpracování žádosti o volání vzdálené metody a chystá se přenést odpověď prostřednictvím kanálu.
RootReferences – metoda Upozorní profiler informacemi o kořenových odkazech po uvolnění paměti.
RuntimeResumeFinished – metoda Upozorní profiler, že modul runtime obnovil všechna vlákna modulu runtime a vrátil se k normálnímu provozu.
RuntimeResumeStarted – metoda Upozorní profiler, že modul runtime obnovuje všechna vlákna modulu runtime.
RuntimeSuspendAborted – metoda Upozorní profiler, že modul runtime přerušil pozastavení modulu runtime, ke kterému došlo.
RuntimeSuspendFinished – metoda Upozorní profiler, že modul runtime dokončil pozastavení všech vláken modulu runtime.
RuntimeSuspendStarted – metoda Upozorní profiler, že modul runtime se chystá pozastavit všechna vlákna modulu runtime.
RuntimeThreadResumed – metoda Upozorní profiler, že zadané vlákno se po pozastavení obnovilo.
RuntimeThreadSuspended – metoda Upozorní profiler, že zadané vlákno bylo nebo se chystá být pozastaveno.
Shutdown – metoda Upozorní profiler, že se aplikace vypíná.
ThreadAssignedToOSThread – metoda Upozorní profiler, že se spravované vlákno implementuje pomocí konkrétního vlákna operačního systému (OS).
ThreadCreated – metoda Upozorní profiler, že bylo vytvořeno vlákno.
ThreadDestroyed – metoda Upozorní profiler, že vlákno bylo zničeno.
UnmanagedToManagedTransition – metoda Upozorní profiler, že došlo k přechodu z nespravovaného kódu na spravovaný kód.

Poznámky

CLR volá metodu v ICorProfilerCallback rozhraní (nebo ICorProfilerCallback2) k upozornění profileru, když dojde k události, ke které profiler přihlásil, dojde. Toto je primární rozhraní zpětného volání, přes které CLR komunikuje s profilerem kódu.

Profiler kódu musí implementovat metody ICorProfilerCallback rozhraní. Pro rozhraní .NET Framework verze 2.0 nebo novější musí profiler také implementovat ICorProfilerCallback2 metody. Každá implementace metody musí vrátit HODNOTU HRESULT, která má hodnotu S_OK při úspěchu nebo E_FAIL při selhání. ClR v současné době ignoruje HRESULT vrácený jednotlivými zpětnými voláními s výjimkou ICorProfilerCallback::ObjectReferences.

V registru systému Microsoft Windows musí profiler kódu zaregistrovat objekt modelu COM (Component Object Model), který implementuje ICorProfilerCallback rozhraní a ICorProfilerCallback2 rozhraní. Profiler kódu se přihlásí k odběru událostí, pro které chce dostávat oznámení voláním ICorProfilerInfo::SetEventMask. To se obvykle provádí v implementaci ICorProfilerCallback::Initialize. Profiler pak může přijímat oznámení z modulu runtime, když dojde k události nebo k ní právě došlo při provádění procesu spuštění modulu runtime.

Poznámka:

Profiler zaregistruje jeden objekt COM. Pokud profiler cílí na rozhraní .NET Framework verze 1.0 nebo 1.1, musí tento objekt COM implementovat pouze metody ICorProfilerCallback. Pokud cílí na rozhraní .NET Framework verze 2.0 nebo novější, musí objekt COM také implementovat metody ICorProfilerCallback2.

Požadavky

Platformy: Viz požadavky na systém.

Záhlaví: CorProf.idl, CorProf.h

Knihovna: CorGuids.lib

Verze rozhraní .NET Framework: Dostupné od verze 1.0

Viz také