Dela via


ICorProfilerInfo4::GetCodeInfo3, metod

Hämtar omfattningen av inbyggd kod som är associerad med den JIT-omkompilerade versionen av den angivna funktionen.

Syntax

HRESULT GetCodeInfo3(  
    [in]  FunctionID functionID,  
    [in]  ReJITID reJitId,  
    [in]  ULONG32 cCodeInfos,  
    [out] ULONG32 *pcCodeInfos,  
    [out, size_is(cCodeInfos), length_is(*pcCodeInfos)]  
    COR_PRF_CODE_INFO codeInfos[]);  

Parametrar

functionID
[in] ID för funktionen som den interna koden är associerad med.

reJitId
[in] Identiteten för den JIT-omkompilerade funktionen.

cCodeInfos
[in] Matrisens codeInfos storlek.

pcCodeInfos
[ut] En pekare till det totala antalet tillgängliga COR_PRF_CODE_INFO strukturer.

codeInfos
[ut] En buffert som tillhandahålls av anroparen. När metoden har returnerats innehåller den en matris med COR_PRF_CODE_INFO strukturer, som var och en beskriver ett block med intern kod.

Kommentarer

Metoden GetCodeInfo3 liknar GetCodeInfo2, förutom att den hämtar DET JIT-omkompilerade ID:t för funktionen som innehåller den angivna IP-adressen.

Anteckning

GetCodeInfo3 kan utlösa en skräpinsamling, medan GetCodeInfo2 inte gör det. Mer information finns i CORPROF_E_UNSUPPORTED_CALL_SEQUENCE HRESULT.

Utrymmena sorteras i ordning för att öka CIL-förskjutningen (Common Intermediate Language).

När GetCodeInfo3 du har returnerat måste du kontrollera att bufferten codeInfos var tillräckligt stor för att innehålla alla COR_PRF_CODE_INFO strukturer. Det gör du genom att jämföra värdet cCodeInfos för med värdet för parametern cchName . Om cCodeInfos den divideras med storleken på en COR_PRF_CODE_INFO struktur är mindre än pcCodeInfosallokerar du en större codeInfos buffert, uppdaterar cCodeInfos med den nya, större storleken och anropar GetCodeInfo3 igen.

Du kan också först anropa GetCodeInfo3 med en buffert med noll längd codeInfos för att få rätt buffertstorlek. Du kan sedan ange buffertstorleken codeInfos till det värde som returneras i pcCodeInfos, multiplicerat med storleken på en COR_PRF_CODE_INFO struktur och anropa GetCodeInfo3 igen.

Krav

Plattformar: Se Systemkrav.

Huvudet: CorProf.idl, CorProf.h

Bibliotek: CorGuids.lib

.NET Framework versioner: Tillgänglig sedan 4.5

Se även