Метод ICorProfilerInfo3::SetEnterLeaveFunctionHooks3WithInfo

Указывает функции, реализованные профилировщиком, которые будут вызываться в перехватчиках FunctionEnter3WithInfo, FunctionLeave3WithInfo и FunctionTailcall3WithInfo управляемых функций.

Синтаксис

HRESULT SetEnterLeaveFunctionHooks3WithInfo(  
            [in] FunctionEnter3WithInfo    *pFuncEnter3,  
            [in] FunctionLeave3withInfo    *pFuncLeave3,  
            [in] FunctionTailcall3WithInfo *pFuncTailcall3);  

Параметры

pFuncEnter3
[in] Указатель на реализацию, которая будет использоваться в качестве обратного FunctionEnter3WithInfo вызова.

pFuncLeave3
[in] Указатель на реализацию, которая будет использоваться в качестве обратного FunctionLeave3WithInfo вызова.

pFuncTailcall3
[in] Указатель на реализацию, которая будет использоваться в качестве обратного FunctionTailcall3WithInfo вызова.

Комментарии

Обработчики FunctionEnter3WithInfo, FunctionLeave3WithInfo и FunctionTailcall3WithInfo обеспечивают проверку кадра и аргументов стека. Для доступа к этим сведениям COR_PRF_ENABLE_FUNCTION_ARGSнеобходимо задать флаги , COR_PRF_ENABLE_FUNCTION_RETVALи (или COR_PRF_ENABLE_FRAME_INFO ). Профилировщик может использовать метод ICorProfilerInfo::SetEventMask для задания флагов событий, а затем использовать SetEnterLeaveFunctionHooks3WithInfo метод для регистрации реализации этой функции.

Одновременно может быть активен только один набор обратных вызовов, и приоритет имеет последняя версия. Таким образом, если профилировщик вызывает метод SetEnterLeaveFunctionHooks2 и SetEnterLeaveFunctionHooks3WithInfo, SetEnterLeaveFunctionHooks3WithInfo используется .

Метод SetEnterLeaveFunctionHooks3WithInfo может вызываться только из обратного вызова ICorProfilerCallback::Initialize профилировщика.

Требования

Платформы: см. раздел Требования к системе.

Заголовок: CorProf.idl, CorProf.h

Библиотека: CorGuids.lib

версии платформа .NET Framework: доступно с 4

См. также раздел