Condividi tramite


Metodo ICorProfilerInfo3::SetEnterLeaveFunctionHooks3

Specifica le funzioni implementate dal profiler che verranno chiamate nelle funzioni FunctionEnter3, FunctionLeave3 e FunctionTailcall3 .

Sintassi

HRESULT SetEnterLeaveFunctionHooks3(  
            [in] FunctionEnter3    *pFuncEnter3,  
            [in] FunctionLeave3    *pFuncLeave3,  
            [in] FunctionTailcall3 *pFuncTailcall3);  

Parametri

pFuncEnter3
[in] Puntatore all'implementazione da usare come FunctionEnter3 callback.

pFuncLeave3
[in] Puntatore all'implementazione da usare come FunctionLeave3 callback.

pFuncTailcall3
[in] Puntatore all'implementazione da usare come FunctionTailcall3 callback.

Commenti

I hook FunctionEnter3, FunctionLeave3 e FunctionTailcall3 non forniscono frame di stack e ispezione degli argomenti. Per accedere a tali informazioni, è necessario impostare i COR_PRF_ENABLE_FUNCTION_ARGSflag , COR_PRF_ENABLE_FUNCTION_RETVALe/o COR_PRF_ENABLE_FRAME_INFO . Il profiler può usare il metodo ICorProfilerInfo::SetEventMask per impostare i flag di evento e quindi usare il metodo ICorProfilerInfo3::SetEnterLeaveFunctionHooks3WithInfo per registrare l'implementazione di questa funzione.

Solo un set di callback può essere attivo alla volta e la versione più recente ha la precedenza. Pertanto, se un profiler chiama sia il metodo SetEnterLeaveFunctionHooks2 che il SetEnterLeaveFunctionHooks3 metodo , SetEnterLeaveFunctionHooks3 viene usato.

Il SetEnterLeaveFunctionHooks3 metodo può essere chiamato solo dal callback ICorProfilerCallback del profiler::Initialize .

Requisiti

Piattaforme: vedere Requisiti di sistema di .NET Framework.

Intestazione: CorProf.idl, CorProf.h

Libreria: CorGuids.lib

Versioni di .NET Framework: Disponibile da 4

Vedi anche