Condividi tramite


Funzione FunctionTailcall3

Notifica al profiler che la funzione attualmente in esecuzione sta per effettuare una chiamata tail a un'altra funzione.

void __stdcall FunctionTailcall3 (FunctionOrRemappedID functionOrRemappedID);

Parametri

  • functionOrRemappedID
    [in] Identificatore della funzione attualmente in esecuzione che sta per effettuare una chiamata tail.

Note

La funzione di callback FunctionTailcall3 notifica al profiler le funzioni che vengono chiamate. Utilizzare il metodo ICorProfilerInfo3::SetEnterLeaveFunctionHooks3 per registrare l'implementazione di questa funzione.

La funzione FunctionTailcall3 è un callback; è necessario implementarla. L'implementazione deve utilizzare l'attributo della classe di archiviazione __declspec(naked).

Il motore di esecuzione non salva alcun registro prima di chiamare la funzione.

  • In ingresso, è necessario salvare tutti i registri che si utilizzano, incluso quelli dell'unità a virgola mobile (FPU).

  • In uscita, è necessario ripristinare lo stack recuperando tutti i parametri inseriti dal chiamante.

L'implementazione di FunctionTailcall3 non deve bloccarsi perché rimanderà l'operazione di Garbage Collection. L'implementazione non deve tentare una Garbage Collection perché lo stack potrebbe non trovarsi in uno stato favorevole per tale operazione. Se viene tentato un Garbage Collection, il runtime si bloccherà fino al completamento di FunctionTailcall3.

La funzione FunctionTailcall3 non deve effettuare una chiamata nel codice gestito o causare in alcun modo un'allocazione della memoria gestita.

Requisiti

Piattaforme: vedere Requisiti di sistema di .NET Framework.

Intestazione: CorProf.idl

Libreria: CorGuids.lib

Versioni di .NET Framework: 4

Vedere anche

Riferimenti

FunctionEnter3

FunctionLeave3

FunctionEnter3WithInfo

FunctionLeave3WithInfo

Funzione FunctionTailcall3WithInfo

SetEnterLeaveFunctionHooks3

SetEnterLeaveFunctionHooks3WithInfo

SetFunctionIDMapper

SetFunctionIDMapper2

Altre risorse

Funzioni statiche globali di profilatura

Cronologia delle modifiche

Data

Cronologia

Motivo

Ottobre 2010

__stdcall è stato aggiunto alla sintassi.

Commenti e suggerimenti dei clienti.