Dela via


FunktionSpara funktion

Meddelar profileraren att en funktion är på väg att återgå till anroparen.

Anteckning

Funktionen FunctionLeave är inaktuell i .NET Framework 2.0. Det kommer att fortsätta att fungera, men kommer att medföra en prestationsstraff. Använd funktionen FunctionLeave2 i stället.

Syntax

void __stdcall FunctionLeave (  
    [in] FunctionID funcID  
);  

Parametrar

funcID [i] Identifieraren för funktionen som returneras.

Kommentarer

Funktionen FunctionLeave är en motringning. Du måste implementera den. Implementeringen måste använda attributet __declspec(naked) storage-class.

Körningsmotorn sparar inga register innan den här funktionen anropas.

  • Vid inmatningen måste du spara alla register som du använder, inklusive de i flyttalsenheten (FPU).

  • När du avslutar måste du återställa stacken genom att ta bort alla parametrar som push-överfördes av anroparen.

Implementeringen av FunctionLeave bör inte blockeras eftersom det fördröjer skräpinsamlingen. Implementeringen bör inte försöka med en skräpinsamling eftersom stacken kanske inte är i ett skräpinsamlingsvänligt tillstånd. Om en skräpinsamling görs blockeras körningen tills FunctionLeave den returneras.

FunctionLeave Dessutom får funktionen inte anropa till hanterad kod eller på något sätt orsaka en hanterad minnesallokering.

Krav

Plattformar: Se Systemkrav.

Huvudet: CorProf.idl

Bibliotek: CorGuids.lib

.NET Framework versioner: 1.1, 1.0

Se även