ICorProfilerInfo2::GetFunctionFromTokenAndTypeArgs 方法

使用指定的中繼資料語彙基元 (包含類別) 以及任何型別引數的 ClassID 值,來取得函式的 FunctionID

語法

HRESULT GetFunctionFromTokenAndTypeArgs(  
    [in] ModuleID moduleID,  
    [in] mdMethodDef funcDef,  
    [in] ClassID classId,  
    [in] ULONG32 cTypeArgs,  
    [in, size_is(cTypeArgs)] ClassID typeArgs[],  
    [out] FunctionID* pFunctionID);  

參數

moduleID
[in] 函式所在之模組的識別碼。

funcDef
[in] 參考函式的 mdMethodDef 中繼資料語彙基元。

classId
[in] 包含類別的函式識別碼。

cTypeArgs
[in] 指定函式的型別參數數目。 非泛型函式的這個值必須是零。

typeArgs
[in] ClassID 值的陣列,每個值都是函式的引數。 如果 cTypeArgs 設定為零,則 typeArgs 的值可以是 NULL。

pFunctionID
[out] 指定函式之 FunctionID 的指標。

備註

使用 mdMethodRef 中繼資料 (而非使用 mdMethodDef 中繼資料語彙基元) 呼叫 GetFunctionFromTokenAndTypeArgs 方法可能會產生無法預期的結果。 呼叫端在傳遞 mdMethodRef 時,應將其解析為 mdMethodDef

如果函式尚未載入,則呼叫 GetFunctionFromTokenAndTypeArgs 會導致載入發生,在許多內容中,這是危險的作業。 例如,在載入模組或型別期間呼叫此方法可能會導致無限迴圈,因為執行階段嘗試循環載入項目。

一般而言,不建議使用 GetFunctionFromTokenAndTypeArgs。 如果分析工具對特定函式的事件感興趣,其應該儲存該函式的 ModuleIDmdMethodDef,並使用 ICorProfilerInfo2::GetFunctionInfo2 來檢查指定的 FunctionID 是否為所需函式的事件。

規格需求

平台:請參閱系統需求

標頭: CorProf.idl、CorProf.h

程式庫:CorGuids.lib

.NET Framework版本:自 2.0 起可用

另請參閱