Compartir a través de


FunctionLeave (Función)

Notifica al generador de perfiles que una función está a punto de volver al llamador.

NotaNota

La función FunctionLeave quedó desusada en .NET Framework 2.0.Seguirá funcionando, pero repercutirá negativamente en el rendimiento.En su lugar, utilice la función FunctionLeave2.

void __stdcall FunctionLeave (
    [in] FunctionID funcID
);

Parámetros

  • funcID
    [in] Identificador de la función que se está devolviendo.

Comentarios

La función FunctionLeave es una devolución de llamada; debe implementarla. La implementación debe utilizar el atributo de clase de almacenamiento __declspec(naked).

El motor de ejecución no guarda ningún registro antes de llamar a esta función.

  • En la entrada, debe guardar todos los registros que utilice, incluidos los de la unidad de punto flotante (FPU).

  • Al salir, debe restablecer la pila desactivando todos los parámetros insertados por el llamador.

La implementación de FunctionLeave no debe bloquearse porque retrasaría la recolección de elementos no utilizados. La implementación no debería intentar realizar la recolección de elementos no utilizados porque es posible que la pila no esté en un estado adecuado para ello. Si se intenta realizar una recolección de elementos no utilizados, el motor en tiempo de ejecución se bloqueará hasta que se devuelva FunctionLeave

Asimismo, la función FunctionLeave no debe llamar a código administrado ni provocar de ninguna forma una asignación de memoria administrada.

Requisitos

Plataformas: vea Requisitos de sistema de .NET Framework.

Encabezado: CorProf.idl

Biblioteca: CorGuids.lib

Versiones de .NET Framework: 1.1, 1.0

Vea también

Referencia

FunctionEnter2 (Función)

FunctionLeave2 (Función)

FunctionTailcall2 (Función)

ICorProfilerInfo2::SetEnterLeaveFunctionHooks2 (Método)

Otros recursos

Funciones estáticas globales para generación de perfiles

Historial de cambios

Fecha

Historial

Motivo

Octubre de 2010

Se agregó __stdcall a la sintaxis.

Comentarios de los clientes.