FunctionLeave3-Funktion
Benachrichtigt den Profiler darüber, dass das Steuerelement von einer Funktion zurückgegeben wird.
void __stdcall FunctionLeave3(FunctionOrRemappedID functionOrRemappedID);
Parameter
- functionOrRemappedID
[in] Der Bezeichner der Funktion, von der das Steuerelement zurückgegeben wird.
Hinweise
Die FunctionLeave3-Rückruffunktion benachrichtigt den Profiler, wenn Funktionen aufgerufen werden, sie unterstützt jedoch keine Rückgabewertüberprüfung. Verwenden Sie die ICorProfilerInfo3::SetEnterLeaveFunctionHooks3-Methode, um die Implementierung dieser Funktion zu registrieren.
Die FunctionLeave3-Funktion ist ein Rückruf; Sie müssen sie implementieren. Die Implementierung muss das __declspec(naked)-Speicherklassenattribut verwenden.
Das Ausführungsmodul speichert vor dem Aufrufen dieser Funktion keine Register.
Beim Eintritt müssen Sie alle verwendeten Register speichern, auch die Register in der Gleitkommaeinheit (Floating-Point Unit, FPU).
Beim Beenden müssen Sie den Stapel wiederherstellen, indem Sie alle Parameter, die vom Aufrufer verschoben wurden, wieder abholen.
Die Implementierung von FunctionLeave3 sollte nicht blockieren, da dies die Garbage Collection verzögert. Die Implementierung sollte nicht versuchen, eine Garbage Collection durchzuführen, weil sich der Stapel möglicherweise nicht in einem für die Garbage Collection geeigneten Zustand befindet. Wenn eine Garbage Collection versucht wird, ist die Laufzeit blockiert, bis FunctionLeave3 zurückkehrt.
Die FunctionLeave3-Funktion darf keinen verwalteten Code aufrufen und auf keine Weise verwalteten Speicher belegen.
Anforderungen
Plattformen: siehe Systemanforderungen für .NET Framework.
Header: CorProf.idl
Bibliothek: CorGuids.lib
.NET Framework-Versionen: 4
Siehe auch
Referenz
SetEnterLeaveFunctionHooks3WithInfo
Weitere Ressourcen
Profilerstellung für globale statische Funktionen
Änderungsprotokoll
Datum |
Versionsgeschichte |
Grund |
---|---|---|
Oktober 2010 |
__stdcall zur Syntax hinzugefügt. |
Kundenfeedback. |