Sdílet prostřednictvím


ICorProfilerInfo3::SetEnterLeaveFunctionHooks3WithInfo Method

Updated: October 2010

Specifies the profiler-implemented functions that will be called on the FunctionEnter3WithInfo, FunctionLeave3WithInfo, and FunctionTailcall3WithInfo hooks of managed functions.

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

Parameters

  • pFuncEnter3
    [in] A pointer to the implementation to be used as the FunctionEnter3WithInfo callback.

  • pFuncLeave3
    [in] A pointer to the implementation to be used as the FunctionLeave3WithInfo callback.

  • pFuncTailcall3
    [in] A pointer to the implementation to be used as the FunctionTailcall3WithInfo callback.

Remarks

The FunctionEnter3WithInfo, FunctionLeave3WithInfo, and FunctionTailcall3WithInfo hooks provide stack frame and argument inspection. To access that information, the COR_PRF_ENABLE_FUNCTION_ARGS, COR_PRF_ENABLE_FUNCTION_RETVAL, and/or COR_PRF_ENABLE_FRAME_INFO flags have to be set. The profiler can use the ICorProfilerInfo::SetEventMask method to set the event flags, and then use the SetEnterLeaveFunctionHooks3WithInfo method to register your implementation of this function.

Only one set of callbacks may be active at a time, and the newest version takes precedence. Therefore, if a profiler calls both SetEnterLeaveFunctionHooks2 and SetEnterLeaveFunctionHooks3WithInfo, SetEnterLeaveFunctionHooks3WithInfo is used.

The SetEnterLeaveFunctionHooks3WithInfo method may be called only from the profiler's ICorProfilerCallback::Initialize callback.

Requirements

Platforms: See .NET Framework System Requirements.

Header: CorProf.idl, CorProf.h

Library: CorGuids.lib

.NET Framework Versions: 4

See Also

Reference

SetEnterLeaveFunctionHooks3

FunctionEnter3

FunctionLeave3

FunctionTailcall3

FunctionEnter3WithInfo

FunctionLeave3WithInfo

FunctionTailcall3WithInfo

ICorProfilerInfo3 Interface

Other Resources

Profiling Global Static Functions

Profiling Interfaces

Profiling (Unmanaged API Reference)

Change History

Date

History

Reason

October 2010

Corrected syntax and fixed incorrect links.

Content bug fix.