Partager via


ICorProfilerCallback, interface

Fournit des méthodes utilisées par le Common Language Runtime (CLR) pour notifier un profileur de code lorsque les événements auxquels le profileur s’est abonné.

Méthodes

Méthode Descriptif
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 pouvant être appelé au runtime (RCW) pour l’IID et la classe spécifiés ont été créés.
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 approprié catch .
ExceptionCatcherLeave, méthode Avertit le profileur que le contrôle est passé hors du bloc approprié catch .
ExceptionCLRCatcherExecute, méthode Obsolète dans .NET Framework version 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’exception 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’exception non managées doit obtenir ces informations par d’autres moyens.
ExceptionSearchCatcherFound, méthode Avertit le profileur que la phase de recherche de 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 de terminer l’exécution.
ExceptionSearchFunctionEnter, méthode Avertit le profileur que la phase de recherche de la gestion des exceptions a entré 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 finally clause 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 laissé une finally clause.
ExceptionUnwindFunctionEnter, méthode Avertit le profileur que la phase de déroulement de la gestion des exceptions a entré une fonction.
ExceptionUnwindFunctionLeave, méthode Avertit le profileur que la phase de déroulement de la gestion des exceptions a terminé 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 a terminé pour une fonction qui a été compilée précédemment à l’aide de NGen.exe.
JITCachedFunctionSearchStarted, méthode Avertit le profileur qu’une recherche a démarré pour une fonction qui a été 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 en ligne 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 en cours de chargement.
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 des références d’objet qui ont été déplacées pendant le garbage collection.
ObjectAllocated, méthode Avertit le profileur que la mémoire dans le tas a été allouée pour un objet.
ObjectReferences, méthode Avertit le profileur des 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 garbage collection précédent.
RemotingClientInvocationFinished, méthode Avertit le profileur qu’un appel de communication à distance s’est exécuté 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 sur le point de traiter la réponse.
RemotingClientSendingMessage, méthode Avertit le profileur que le client envoie une demande 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 une demande d’appel ou d’activation de méthode distante.
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 Avertit le profileur avec des informations sur les références racines après le garbage collection.
RuntimeResumeFinished, méthode Avertit le profileur que le runtime a repris tous les threads d’exécution et a retourné à l’opération normale.
RuntimeResumeStarted, méthode Avertit le profileur que le runtime reprend tous les threads d’exécution.
RuntimeSuspendAborted, méthode Avertit le profileur que le runtime a abandonné la suspension du runtime qui s’est produite.
RuntimeSuspendFinished, méthode Avertit le profileur que le runtime a terminé la suspension de tous les threads d’exécution.
RuntimeSuspendStarted, méthode Avertit le profileur que le runtime est sur le point de suspendre tous les threads d’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é ou est sur le point d’être suspendu.
Shutdown, méthode 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.

Remarques

Le CLR appelle une méthode dans l’interface ICorProfilerCallback (ou ICorProfilerCallback2) pour notifier 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 ICorProfilerCallback2 méthodes. Chaque implémentation de méthode doit retourner un HRESULT qui a une valeur de S_OK sur la réussite ou l’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 et ICorProfilerCallback2 les ICorProfilerCallback interfaces. Un profileur de code s’abonne aux événements pour lesquels il souhaite recevoir une notification en appelant ICorProfilerInfo ::SetEventMask. Cela est généralement effectué dans l’implémentation du profileur de ICorProfilerCallback ::Initialize. Le profileur peut ensuite recevoir une notification du runtime lorsqu’un événement est sur le point de se produire ou s’est produit dans un processus d’exécution en cours d’exécution.

Note

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

Voir aussi