ICorProfilerCallback::UnmanagedToManagedTransition Method

Notifies the profiler that a transition from unmanaged code to managed code has occurred.

Syntax

HRESULT UnmanagedToManagedTransition(  
    [in] FunctionID functionId,  
    [in] COR_PRF_TRANSITION_REASON reason);  

Parameters

functionId
[in] The ID of the function that is being called.

reason
[in] A value of the COR_PRF_TRANSITION_REASON enumeration that indicates whether the transition occurred because of a call into managed code from unmanaged code, or because of a return from an unmanaged function called by a managed one.

Remarks

If the value of reason is COR_PRF_TRANSITION_RETURN and functionId is not null, the function ID is that of the unmanaged function, and will never have been compiled using the just-in-time (JIT) compiler. Unmanaged functions have some basic information associated with them, such as a name and some metadata.

If the value of reason is COR_PRF_TRANSITION_CALL, it may be possible that the called function (that is, the managed function) has not yet been JIT-compiled.

Requirements

Platforms: See System Requirements.

Header: CorProf.idl, CorProf.h

Library: CorGuids.lib

.NET Framework Versions: Available since 2.0

See Also

ICorProfilerCallback Interface
ManagedToUnmanagedTransition Method
Using Explicit PInvoke in C++ (DllImport Attribute)
Using C++ Interop (Implicit PInvoke)