Partager via


FunctionTailcall3, fonction

Informe le profileur que la fonction en cours d'exécution va exécuter un appel tail vers une autre fonction.

void __stdcall FunctionTailcall3 (FunctionOrRemappedID functionOrRemappedID);

Paramètres

  • functionOrRemappedID
    [in] Identificateur de la fonction en cours d'exécution qui va faire un appel tail.

Notes

La fonction de rappel FunctionTailcall3 notifie le générateur de profils lorsque les fonctions sont appelées. Utilisez la méthode ICorProfilerInfo3::SetEnterLeaveFunctionHooks3 pour enregistrer votre implémentation de cette fonction.

La fonction FunctionTailcall3 est un rappel ; vous devez l'implémenter. L'implémentation doit utiliser l'attribut de classe de stockage __declspec(naked).

Le moteur d'exécution n'enregistre aucun registre avant d'appeler cette fonction.

  • À l'entrée, vous devez enregistrer tous les registres que vous utilisez, y compris ceux de l'unité en virgule flottante.

  • À la sortie, vous devez restaurer la pile en dépilant tous les paramètres qui ont fait l'objet d'un push par son appelant.

L'implémentation de FunctionTailcall3 ne doit pas bloquer, car cela diffèrerait le garbage collection. L'implémentation ne doit pas tenter de garbage collection, car la pile n'est peut-être pas dans un état de garbage collection convivial. En cas de tentative de garbage collection, le runtime procède à un blocage jusqu'à ce que FunctionTailcall3 soit retourné.

La fonction FunctionTailcall3 ne doit pas effectuer d'appels dans du code managé, ni générer de quelque manière que ce soit une allocation de mémoire managée.

Configuration requise

Plateformes : consultez Configuration requise du .NET Framework.

En-tête : Corprof.idl

Bibliothèque : CorGuids.lib

Versions du .NET Framework : 4

Voir aussi

Référence

FunctionEnter3

FunctionLeave3

FunctionEnter3WithInfo

FunctionLeave3WithInfo

FunctionTailcall3WithInfo, fonction

SetEnterLeaveFunctionHooks3

SetEnterLeaveFunctionHooks3WithInfo

SetFunctionIDMapper

SetFunctionIDMapper2

Autres ressources

Fonctions statiques globales du profilage

Historique des modifications

Date

Historique

Motif

Octobre 2010

Ajouté __stdcall à la syntaxe.

Commentaires client.