ICorProfilerCallback, interface
Fournit des méthodes qui sont utilisées par le CLR (Common language runtime) pour envoyer des notifications à un profileur de code quand les événements auxquels le profileur s’est abonné se produisent.
Méthodes
Méthode | Description |
---|---|
AppDomainCreationFinished, méthode | Avertit le profileur qu’un domaine d’application a été créé. |
AppDomainCreationStarted, méthode | Avertit le profileur qu’un domaine d’application est en cours de création. |
AppDomainShutdownFinished, méthode | Avertit le profileur qu’un domaine d’application a été déchargé à partir d’un processus. |
AppDomainShutdownStarted, méthode | Avertit le profileur qu’un domaine d’application est déchargé à partir d’un processus. |
AssemblyLoadFinished, méthode | Avertit le profileur qu’un assembly a terminé le chargement. |
AssemblyLoadStarted, méthode | Avertit le profileur qu’un assembly est en cours de chargement. |
AssemblyUnloadFinished, méthode | Avertit le profileur qu’un assembly a été déchargé. |
AssemblyUnloadStarted, méthode | Avertit le profileur qu’un assembly est déchargé. |
ClassLoadFinished, méthode | Avertit le profileur qu’une classe a terminé le chargement. |
ClassLoadStarted, méthode | Avertit le profileur qu’une classe est chargée. |
ClassUnloadFinished, méthode | Avertit le profileur qu’une classe a terminé le déchargement. |
ClassUnloadStarted, méthode | Avertit le profileur qu’une classe est déchargée. |
COMClassicVTableCreated, méthode | Avertit le profileur qu’un wrapper RCW pour l’IID et la classe spécifiés a été créé. |
COMClassicVTableDestroyed, méthode | Avertit le profileur qu’un RCW est détruit. |
ExceptionCatcherEnter, méthode | Avertit le profileur que le contrôle est passé au bloc catch approprié. |
ExceptionCatcherLeave, méthode | Avertit le profileur que le contrôle est passé hors du bloc catch approprié. |
ExceptionCLRCatcherExecute, méthode | Obsolète dans .NET Framework 2.0. |
ExceptionCLRCatcherFound, méthode | Obsolète dans .NET Framework 2.0. |
ExceptionOSHandlerEnter, méthode | Non implémenté. Un profileur qui a besoin d’informations d’exceptions non managées doit obtenir ces informations par d’autres moyens. |
ExceptionOSHandlerLeave, méthode | Non implémenté. Un profileur qui a besoin d’informations d’exceptions non managées doit obtenir ces informations par d’autres moyens. |
ExceptionSearchCatcherFound, méthode | Avertit le profileur que la phase de recherche de la gestion des exceptions a localisé un gestionnaire pour l’exception levée. |
ExceptionSearchFilterEnter, méthode | Avertit le profileur qu’un filtre utilisateur est en cours d’exécution. |
ExceptionSearchFilterLeave, méthode | Avertit le profileur qu’un filtre utilisateur vient d’être exécuté. |
ExceptionSearchFunctionEnter, méthode | Avertit le profileur que la phase de recherche de la gestion des exceptions est entré dans une fonction. |
ExceptionSearchFunctionLeave, méthode | Avertit le profileur que la phase de recherche de la gestion des exceptions a terminé la recherche d’une fonction. |
ExceptionThrown, méthode | Avertit le profileur qu’une exception a été levée. |
ExceptionUnwindFinallyEnter, méthode | Avertit le profileur que la phase de déroulement de la gestion des exceptions entre une dans une clause finally contenue dans la fonction spécifiée. |
ExceptionUnwindFinallyLeave, méthode | Avertit le profileur que la phase de déroulement de la gestion des exceptions a quitté une clause finally . |
ExceptionUnwindFunctionEnter, méthode | Avertit le profileur que la phase de déroulement de la gestion des exceptions est entré dans une fonction. |
ExceptionUnwindFunctionLeave, méthode | Avertit le profileur que la phase de déroulement de la gestion des exceptions est fini le déroulement d’une fonction. |
FunctionUnloadStarted, méthode | Avertit le profileur que le runtime a commencé à décharger une fonction. |
Initialize, méthode | Appelé pour initialiser le profileur chaque fois qu’une nouvelle application CLR est démarrée. |
JITCachedFunctionSearchFinished, méthode | Avertit le profileur qu’une recherche est terminée pour une fonction compilée précédemment à l’aide de NGen.exe. |
JITCachedFunctionSearchStarted, méthode | Avertit le profileur qu’une recherche a été lancée pour une fonction compilée précédemment à l’aide de NGen.exe. |
JITCompilationFinished, méthode | Avertit le profileur que le compilateur JIT a terminé la compilation d’une fonction. |
JITCompilationStarted, méthode | Avertit le profileur que le compilateur juste-à-temps (JIT) a commencé à compiler une fonction. |
JITFunctionPitched, méthode | Avertit le profileur qu’une fonction qui a été compilée par JIT a été supprimée de la mémoire. |
JITInlining, méthode | Avertit le profileur que le compilateur JIT est sur le point d’insérer une fonction inline avec une autre fonction. |
ManagedToUnmanagedTransition, méthode | Avertit le profileur qu’une transition du code managé au code non managé s’est produite. |
ModuleAttachedToAssembly, méthode | Avertit le profileur qu’un module est attaché à son assembly parent. |
ModuleLoadFinished, méthode | Avertit le profileur qu’un module a terminé le chargement. |
ModuleLoadStarted, méthode | Avertit le profileur qu’un module est chargé. |
ModuleUnloadFinished, méthode | Avertit le profileur qu’un module a terminé le déchargement. |
ModuleUnloadStarted, méthode | Avertit le profileur qu’un module est déchargé. |
MovedReferences, méthode | Avertit le profileur au sujet de références d’objet qui ont été déplacées pendant le nettoyage de la mémoire. |
ObjectAllocated, méthode | Avertit le profileur que de la mémoire dans le tas a été allouée pour un objet. |
ObjectReferences, méthode | Avertit le profileur au sujet d’objets en mémoire référencés par l’objet spécifié. |
ObjectsAllocatedByClass, méthode | Avertit le profileur du nombre d’instances de chaque classe spécifiée qui ont été créées depuis le nettoyage de la mémoire précédent. |
RemotingClientInvocationFinished, méthode | Avertit le profileur qu’un appel de communication à distance s’est exécuté jusqu’à la fin sur le client. |
RemotingClientInvocationStarted, méthode | Avertit le profileur qu’un appel de communication à distance a démarré. |
RemotingClientReceivingReply, méthode | Avertit le profileur que la partie côté serveur d’un appel de communication à distance est terminée et que le client reçoit et s’apprête à traiter la réponse. |
RemotingClientSendingMessage, méthode | Avertit le profileur que le client envoie une requête au serveur. |
RemotingServerInvocationReturned, méthode | Avertit le profileur que le processus a terminé d’appeler une méthode en réponse à une demande d’appel de méthode distante. |
RemotingServerInvocationStarted, méthode | Avertit le profileur que le processus appelle une méthode en réponse à une demande d’appel de méthode distante. |
RemotingServerReceivingMessage, méthode | Avertit le profileur que le processus reçoit un appel de méthode distante ou une demande d’activation. |
RemotingServerSendingReply, méthode | Avertit le profileur que le processus a terminé le traitement d’une demande d’appel de méthode distante et est sur le point de transmettre la réponse via un canal. |
RootReferences, méthode | Notifie le profileur avec des informations sur les références racines après le nettoyage de la mémoire. |
RuntimeResumeFinished, méthode | Avertit le profileur que le runtime a repris tous les threads d’exécution et est retourné au fonctionnement normal. |
RuntimeResumeStarted, méthode | Avertit le profileur que le runtime reprend tous les threads à l’exécution. |
RuntimeSuspendAborted, méthode | Avertit le profileur que le runtime a abandonné la suspension au moment de l’exécution qui s’est produite. |
RuntimeSuspendFinished, méthode | Avertit le profileur que le runtime a terminé la suspension de tous les threads à l’exécution. |
RuntimeSuspendStarted, méthode | Avertit le profileur que le runtime est sur le point de suspendre tous les threads à l’exécution. |
RuntimeThreadResumed, méthode | Avertit le profileur que le thread spécifié a repris après avoir été suspendu. |
RuntimeThreadSuspended, méthode | Avertit le profileur que le thread spécifié a été suspendu ou est sur le point d’être suspendu. |
Shutdown Method | Avertit le profileur que l’application s’arrête. |
ThreadAssignedToOSThread, méthode | Avertit le profileur qu’un thread managé est implémenté à l’aide d’un thread de système d’exploitation particulier. |
ThreadCreated, méthode | Avertit le profileur qu’un thread a été créé. |
ThreadDestroyed, méthode | Avertit le profileur qu’un thread a été détruit. |
UnmanagedToManagedTransition, méthode | Avertit le profileur qu’une transition du code non managé au code managé s’est produite. |
Notes
Le CLR appelle une méthode dans l’interface ICorProfilerCallback
(ou ICorProfilerCallback2) pour avertir le profileur lorsqu’un événement auquel le profileur s’est abonné se produit. Il s’agit de l’interface de rappel principale via laquelle le CLR communique avec le profileur de code.
Un profileur de code doit implémenter les méthodes de l’interface ICorProfilerCallback
. Pour .NET Framework version 2.0 ou ultérieure, le profileur doit également implémenter les méthodes ICorProfilerCallback2
. Chaque implémentation de méthode doit retourner un HRESULT dont la valeur est S_OK en cas de réussite ou E_FAIL en cas d’échec. Actuellement, le CLR ignore le HRESULT retourné par chaque rappel, sauf ICorProfilerCallback::ObjectReferences.
Dans le Registre Microsoft Windows, un profileur de code doit inscrire son objet COM (Component Object Model) qui implémente les interfaces ICorProfilerCallback
et ICorProfilerCallback2
. Un profileur de code s’abonne aux événements pour lesquels il souhaite recevoir une notification en appelant ICorProfilerInfo::SetEventMask. Cette opération est généralement effectuée dans l’implémentation du profileur iCorProfilerCallback::Initialize. Le profileur est alors en mesure de recevoir une notification du runtime lorsqu’un événement est sur le point de se produire ou s’est produit dans un processus de runtime en cours d’exécution.
Notes
Le profileur inscrit un seul objet COM. Si le profileur cible .NET Framework version 1.0 ou 1.1, cet objet COM doit implémenter uniquement les méthodes de ICorProfilerCallback
. S’il cible .NET Framework version 2.0 ou ultérieure, l’objet COM doit également implémenter les méthodes de ICorProfilerCallback2
.
Spécifications
Plateformes : Consultez Configuration requise.
En-tête : CorProf.idl, CorProf.h
Bibliothèque : CorGuids.lib
Versions de .NET Framework : Disponible à partir de la version 1.0