ICorProfilerCallback-Schnittstelle
Stellt Methoden bereit, mit denen die Common Language Runtime (CLR) einen Codeprofiler benachrichtigt, wenn die abonnierten Ereignisse des Profilers auftreten.
Methoden
Methode |
Beschreibung |
---|---|
Benachrichtigt den Profiler, dass eine Anwendungsdomäne erstellt wurde. |
|
Benachrichtigt den Profiler, dass eine Anwendungsdomäne erstellt wird. |
|
Benachrichtigt den Profiler, dass eine Anwendungsdomäne aus einem Prozess entladen wurde. |
|
Benachrichtigt den Profiler, dass eine Anwendungsdomäne aus einem Prozess entladen wird. |
|
Benachrichtigt den Profiler, dass eine Assembly fertig geladen ist. |
|
Benachrichtigt den Profiler, dass eine Assembly geladen wird. |
|
Benachrichtigt den Profiler, dass eine Assembly entladen wurde. |
|
Benachrichtigt den Profiler, dass eine Assembly entladen wird. |
|
Benachrichtigt den Profiler, dass eine Klasse fertig geladen ist. |
|
Benachrichtigt den Profiler, dass eine Klasse geladen wird. |
|
Benachrichtigt den Profiler, dass eine Klasse fertig entladen ist. |
|
Benachrichtigt den Profiler, dass eine Klasse entladen wird. |
|
Benachrichtigt den Profiler, dass ein Runtime Callable Wrapper (RCW) für die angegebene IID und Klasse erstellt wurde. |
|
Benachrichtigt den Profiler, dass ein RCW zerstört wird. |
|
Benachrichtigt den Profiler, dass die Steuerung an den entsprechenden catch-Block übergeben wird. |
|
Benachrichtigt den Profiler, dass das Steuerelement aus dem entsprechenden catch-Block übergeben wird. |
|
In .NET Framework, Version 2.0, veraltet. |
|
In .NET Framework, Version 2.0, veraltet. |
|
Nicht implementiert. Ein Profiler, der nicht verwaltete Ausnahmeinformationen benötigt, muss sich diese Informationen auf andere Weise beschaffen. |
|
Nicht implementiert. Ein Profiler, der nicht verwaltete Ausnahmeinformationen benötigt, muss sich diese Informationen auf andere Weise beschaffen. |
|
Benachrichtigt den Profiler, dass in der Suchphase der Ausnahmebehandlung ein Handler für die ausgelöste Ausnahme gefunden wurde. |
|
Benachrichtigt den Profiler, dass ein Benutzerfilter ausgeführt wird. |
|
Benachrichtigt den Profiler, dass ein Benutzerfilter gerade die Ausführung beendet hat. |
|
Benachrichtigt den Profiler, dass die Suchphase der Ausnahmebehandlung in eine Funktion eingetreten ist. |
|
Benachrichtigt den Profiler, dass die Suchphase der Ausnahmebehandlung in einer Funktion beendet ist. |
|
Benachrichtigt den Profiler, dass eine Ausnahme ausgelöst wurde. |
|
Benachrichtigt den Profiler, dass die Entladephase der Ausnahmebehandlung in eine finally-Klausel eintritt, die in der angegebenen Funktion enthalten ist. |
|
Benachrichtigt den Profiler, dass in der Entladephase der Ausnahmebehandlung der Austritt aus einer finally-Klausel erfolgt ist. |
|
Benachrichtigt den Profiler, dass die Entladephase der Ausnahmebehandlung in eine Funktion eingetreten ist. |
|
Benachrichtigt den Profiler, dass die Entladephase der Ausnahmebehandlung das Entladen einer Funktion abgeschlossen hat. |
|
Benachrichtigt den Profiler, dass die Laufzeit begonnen hat, eine Funktion zu entladen. |
|
Wird aufgerufen, um den Profiler zu initialisieren, wenn eine neue CLR-Anwendung gestartet wird. |
|
ICorProfilerCallback::JITCachedFunctionSearchFinished-Methode |
Benachrichtigt den Profiler, dass eine Suche für eine Funktion beendet wurde, die vorher mit NGen.exe kompiliert wurde. |
ICorProfilerCallback::JITCachedFunctionSearchStarted-Methode |
Benachrichtigt den Profiler, dass eine Suche für eine Funktion begonnen wurde, die vorher mit NGen.exe kompiliert wurde. |
Benachrichtigt den Profiler, dass der JIT-Compiler die Kompilierung einer Funktion beendet hat. |
|
Benachrichtigt den Profiler, dass der JIT-Compiler (Just-In-Time) begonnen hat, eine Funktion zu kompilieren. |
|
Benachrichtigt den Profiler, dass eine JIT-kompilierte Funktion aus dem Arbeitsspeicher entfernt wurde. |
|
Benachrichtigt den Profiler, dass der JIT-Compiler gerade eine Funktion inline in eine andere Funktion einfügt. |
|
Benachrichtigt den Profiler, dass ein Übergang von verwaltetem Code zu nicht verwaltetem Code aufgetreten ist. |
|
Benachrichtigt den Profiler, dass ein Modul an seine übergeordnete Assembly angefügt wird. |
|
Benachrichtigt den Profiler, dass ein Modul fertig geladen ist. |
|
Benachrichtigt den Profiler, dass ein Modul geladen wird. |
|
Benachrichtigt den Profiler, dass ein Modul fertig entladen ist. |
|
Benachrichtigt den Profiler, dass ein Modul entladen wird. |
|
Benachrichtigt den Profiler über Objektverweise, die während der Garbage Collection verschoben wurden. |
|
Benachrichtigt den Profiler, dass Arbeitsspeicher im Heap für ein Objekt belegt wurde. |
|
Benachrichtigt den Profiler über Objekte im Arbeitsspeicher, auf die vom angegebenen Objekt verwiesen wird. |
|
Benachrichtigt den Profiler über die Anzahl der Instanzen jeder angegebenen Klasse, die seit der letzten Garbage Collection erstellt wurden. |
|
ICorProfilerCallback::RemotingClientInvocationFinished-Methode |
Benachrichtigt den Profiler, dass ein Remotingaufruf auf dem Client abgeschlossen wurde. |
ICorProfilerCallback::RemotingClientInvocationStarted-Methode |
Benachrichtigt den Profiler, dass ein Remotingaufruf gestartet wurde. |
Benachrichtigt den Profiler, dass der serverseitige Teil eines Remotingaufrufs abgeschlossen ist und der Client jetzt empfängt und mit der Verarbeitung der Antwort beginnt. |
|
Benachrichtigt den Profiler, dass der Client eine Anforderung an den Server sendet. |
|
ICorProfilerCallback::RemotingServerInvocationReturned-Methode |
Benachrichtigt den Profiler, dass der Prozess den Aufruf einer Methode als Reaktion auf die Aufrufanforderung einer Remotemethode beendet hat. |
ICorProfilerCallback::RemotingServerInvocationStarted-Methode |
Benachrichtigt den Codeprofiler, dass der Prozess aufgrund der Aufrufanforderung einer Remotemethode eine Methode aufruft. |
ICorProfilerCallback::RemotingServerReceivingMessage-Methode |
Benachrichtigt den Profiler, dass der Prozess eine Aufrufanforderung oder eine Aktivierungsanforderung einer Remotemethode empfängt. |
Benachrichtigt den Profiler, dass der Prozess die Verarbeitung einer Aufrufanforderung einer Remotemethode beendet hat und im Begriff ist, die Antwort über einen Channel zu übertragen. |
|
Benachrichtigt den Profiler mit Informationen über Stammverweise nach einer Garbage Collection. |
|
Benachrichtigt den Profiler, dass die Laufzeit sämtliche Laufzeitthreads fortgesetzt hat und zum normalen Ablauf zurückgekehrt ist. |
|
Benachrichtigt den Profiler, dass die Common Language Runtime alle Laufzeitthreads fortsetzt. |
|
Benachrichtigt den Profiler, dass die Common Language Runtime die aufgetretene Laufzeitunterbrechung abgebrochen hat. |
|
Benachrichtigt den Profiler, dass die Laufzeit die Unterbrechung aller Laufzeitthreads abgeschlossen hat. |
|
Benachrichtigt den Profiler, dass die Laufzeit alle Laufzeitthreads anhält. |
|
Benachrichtigt den Profiler, dass der angegebene Thread nach seiner Unterbrechung fortgesetzt wurde. |
|
Benachrichtigt den Profiler, dass der angegebene Thread unterbrochen wurde oder kurz vor einer Unterbrechung steht. |
|
Benachrichtigt den Profiler, dass die Anwendung heruntergefahren wird. |
|
Benachrichtigt den Profiler, dass ein verwalteter Thread mit einem bestimmten Betriebssystemthread implementiert wird. |
|
Benachrichtigt den Profiler, dass ein Thread erstellt wurde. |
|
Benachrichtigt den Profiler, dass ein Thread zerstört wurde. |
|
Benachrichtigt den Profiler, dass ein Übergang von nicht verwaltetem Code zu verwaltetem Code aufgetreten ist. |
Hinweise
Die CLR ruft eine Methode in der ICorProfilerCallback-Schnittstelle (oder der ICorProfilerCallback2-Schnittstelle) auf, um den Profiler zu benachrichtigen, wenn ein abonniertes Ereignis des Profilers auftritt. Dies ist die primäre Rückrufschnittstelle, über die die CLR mit dem Codeprofiler kommuniziert.
Ein Codeprofiler muss die Methoden der ICorProfilerCallback-Schnittstelle implementieren. Für .NET Framework, Version 2.0 und höher, muss der Profiler auch die ICorProfilerCallback2-Methoden implementieren. Jede Methodenimplementierung muss ein HRESULT zurückgeben, das bei Erfolg den Wert S_OK und bei einem Fehler den Wert E_FAIL aufweist. Die CLR ignoriert derzeit das HRESULT, das von jedem Rückruf außer ICorProfilerCallback::ObjectReferences zurückgegeben wird.
Ein Codeprofiler muss in der Microsoft Windows-Registrierung sein COM-Objekt (Component Object Model) registrieren, das die ICorProfilerCallback-Schnittstelle und die ICorProfilerCallback2-Schnittstelle implementiert. Ein Codeprofiler abonniert die Ereignisse, für die er eine Benachrichtigung empfangen möchte, indem er ICorProfilerInfo::SetEventMask aufruft. Dies geschieht in der Regel bei der Implementierung von ICorProfilerCallback::Initialize durch den Profiler. Der Profiler kann dann Benachrichtigungen von der Laufzeit empfangen, wenn demnächst ein Ereignis im gerade ausgeführten Laufzeitprozess auftritt oder aufgetreten ist.
Hinweis |
---|
Der Profiler registriert ein einzelnes COM-Objekt.Wenn der Profiler auf .NET Framework, Version 1.0 oder 1.1, abzielt, muss das COM-Objekt nur die Methoden von ICorProfilerCallback implementieren.Wenn er auf .NET Framework, Version 2.0 und höher, abzielt, muss das COM-Objekt auch die Methoden von ICorProfilerCallback2 implementieren. |
Anforderungen
Plattformen: siehe Systemanforderungen für .NET Framework.
Header: CorProf.idl, CorProf.h
Bibliothek: CorGuids.lib
.NET Framework-Versionen: 4, 3.5 SP1, 3.5, 3.0 SP1, 3.0, 2.0 SP1, 2.0, 1.1, 1.0
Siehe auch
Referenz
ICorProfilerCallback2-Schnittstelle