Udostępnij za pośrednictwem


FunctionLeave — Funkcja

Powiadamia profilera, że funkcja ma wrócić do elementu wywołującego.

Uwaga

Funkcja FunctionLeave jest przestarzała w .NET Framework 2.0. Będzie nadal działać, ale spowoduje karę za wykonanie. Zamiast tego użyj funkcji FunctionLeave2 .

Składnia

void __stdcall FunctionLeave (  
    [in] FunctionID funcID  
);  

Parametry

funcID [in] Identyfikator zwracanej funkcji.

Uwagi

Funkcja FunctionLeave jest wywołaniem zwrotnym. Należy ją zaimplementować. Implementacja musi używać atrybutu __declspecklasy magazynu (naked).

Aparat wykonywania nie zapisuje żadnych rejestrów przed wywołaniem tej funkcji.

  • Podczas wprowadzania należy zapisać wszystkie używane rejestry, w tym rejestry w jednostce zmiennoprzecinkowe (FPU).

  • Po zakończeniu należy przywrócić stos przez wyskakujące okienko wszystkich parametrów, które zostały wypchnięte przez jego obiekt wywołujący.

Implementacja elementu FunctionLeave nie powinna blokować, ponieważ opóźni odzyskiwanie pamięci. Implementacja nie powinna próbować odśmiecać pamięci, ponieważ stos może nie być w stanie przyjaznym dla odzyskiwania pamięci. Jeśli zostanie podjęta próba odzyskiwania pamięci, środowisko uruchomieniowe zostanie zablokowane do momentu FunctionLeave powrotu.

FunctionLeave Ponadto funkcja nie może wywołać kodu zarządzanego ani w żaden sposób spowodować alokację pamięci zarządzanej.

Wymagania

Platformy: Zobacz Wymagania systemowe.

Nagłówka: CorProf.idl

Biblioteki: CorGuids.lib

.NET Framework wersje: 1.1, 1.0

Zobacz też