Condividi tramite


Funzione FunctionEnter

Notifica al profiler che il controllo è passato a una funzione.

NotaNota

La funzione FunctionEnter è obsoleta in .NET Framework versione 2.0 e il suo utilizzo comporta una riduzione delle prestazioni.Utilizzare la funzione FunctionEnter2.

void __stdcall FunctionEnter (
    [in]  FunctionID funcID
);

Parametri

  • funcID
    [in] Identificatore della funzione al quale è passato il controllo.

Note

La funzione FunctionEnter è un callback; è necessario implementarla. L'implementazione deve utilizzare l'attributo del 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 FunctionEnter non deve bloccarsi perché ritarderà il 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 FunctionEnter.

Inoltre, la funzione FunctionEnter 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: 1.1, 1.0

Vedere anche

Riferimenti

Funzione FunctionEnter2

Funzione FunctionLeave2

Funzione FunctionTailcall2

Metodo ICorProfilerInfo2::SetEnterLeaveFunctionHooks2

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.