Nota
El acceso a esta página requiere autorización. Puede intentar iniciar sesión o cambiar directorios.
El acceso a esta página requiere autorización. Puede intentar cambiar los directorios.
Notifica al generador de perfiles que la función que se está ejecutando está a punto de realizar una llamada de cola a otra función.
![]() |
---|
La función FunctionTailcall quedó desusada en la versión 2.0 de .NET Framework.Seguirá funcionando, pero repercutirá negativamente en el rendimiento.Utilice en su lugar la función FunctionTailcall2. |
void __stdcall FunctionTailcall (
[in] FunctionID funcID
);
Parámetros
- funcID
[in] Identificador de la función que se está ejecutando y que está a punto de hacer una llamada de cola.
Comentarios
La función de destino de la llamada de cola utilizará el marco de pila actual y volverá directamente al llamador de la función que hizo la llamada de cola. Esto significa que no se emitirá una devolución de llamada FunctionLeave para una función que sea el destino de una llamada de cola.
La función FunctionTailcall 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 FunctionTailcall 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 bloquea hasta que vuelva FunctionTailcall
Asimismo, la función FunctionTailcall 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
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. |