Dela via


ICorProfilerInfo2::GetFunctionFromTokenAndTypeArgs, metod

FunctionID Hämtar för en funktion med hjälp av den angivna metadatatoken, som innehåller klass och ClassID värden för alla typargument.

Syntax

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

Parametrar

moduleID
[in] ID:t för modulen där funktionen finns.

funcDef
[in] En mdMethodDef metadatatoken som refererar till funktionen.

classId
[in] ID:t för funktionens innehållande klass.

cTypeArgs
[in] Antalet typparametrar för den angivna funktionen. Det här värdet måste vara noll för icke-generiska funktioner.

typeArgs
[in] En matris med ClassID värden, som var och en är ett argument för funktionen. Värdet typeArgs för kan vara NULL om cTypeArgs är inställt på noll.

pFunctionID
[ut] En pekare till för FunctionID den angivna funktionen.

Kommentarer

GetFunctionFromTokenAndTypeArgs Att anropa metoden med metadata mdMethodRef i stället för en mdMethodDef metadatatoken kan få oförutsägbara resultat. Anropare bör matcha mdMethodRef till en mdMethodDef när de skickar den.

Om funktionen inte redan har lästs in kommer anrop GetFunctionFromTokenAndTypeArgs att orsaka inläsning, vilket är en farlig åtgärd i många kontexter. Om du till exempel anropar den här metoden under inläsningen av moduler eller typer kan det leda till en oändlig loop när körningen försöker läsa in saker cirkulärt.

I allmänhet rekommenderas inte användning av GetFunctionFromTokenAndTypeArgs . Om profilerare är intresserade av händelser för en viss funktion bör de lagra ModuleID och mdMethodDef för den funktionen och använda ICorProfilerInfo2::GetFunctionInfo2 för att kontrollera om en viss FunctionID funktion är den önskade funktionen.

Krav

Plattformar: Se Systemkrav.

Huvudet: CorProf.idl, CorProf.h

Bibliotek: CorGuids.lib

.NET Framework versioner: Tillgänglig sedan 2.0

Se även