共用方式為


ICorProfilerCallback::UnmanagedToManagedTransition 方法

向分析工具告知,已發生從 Unmanaged 程式碼到 Managed 程式碼的轉換。

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

參數

  • functionId
    [in] 呼叫中函式的 ID。

  • reason
    [in] COR_PRF_TRANSITION_REASON 列舉型別的值,表示是否因為 Unmanaged 程式碼呼叫 Managed 程式碼,還是因為 Managed 函式呼叫 Unmanaged 函式傳回,而發生轉換。

備註

如果 reason 的值為 COR_PRF_TRANSITION_RETURN,而且 functionId 不是 null,則此函式 ID 為 Unmanaged 函式的函式 ID,而且從未使用 Just-In-Time (JIT) 編譯器編譯過。 Unmanaged 函式有一些關聯的基本資訊,例如名稱和一些中繼資料。

如果 reason 的值為 COR_PRF_TRANSITION_CALL,則被呼叫的函式 (即 Managed 函式) 尚未經過 JIT 編譯。

需求

**平台:**請參閱 .NET Framework 系統需求

**標頭:**CorProf.idl、CorProf.h

**程式庫:**CorGuids.lib

**.NET Framework 版本:**4、3.5 SP1、3.5、3.0 SP1、3.0、2.0 SP1、2.0

請參閱

參考

ICorProfilerCallback 介面

ICorProfilerCallback::ManagedToUnmanagedTransition 方法

使用 C++ Interop (隱含 PInvoke)

其他資源

在 C++ 中使用明確的 PInvoke (DllImport 屬性)