Sdílet prostřednictvím


Metoda ICorProfilerInfo9::GetCodeInfo4

Vzhledem k počáteční adrese nativního kódu vrátí bloky virtuální paměti, které tento kód ukládají.

Syntaxe

HRESULT GetCodeInfo4( [in]  UINT_PTR pNativeCodeStartAddress,
                      [in]  ULONG32 cCodeInfos,
                      [out] ULONG32* pcCodeInfos,
                      [out] COR_PRF_CODE_INFO codeInfos[]);

Parametry

pNativeCodeStartAddress
[v] Ukazatel na začátek nativní funkce.

cCodeInfos
[v] Velikost codeInfos pole.

pcCodeInfos
[ven] Ukazatel na celkový počet dostupných COR_PRF_CODE_INFO struktur.

codeInfos
[ven] Vyrovnávací paměť poskytovaná volajícím. Jakmile metoda vrátí, obsahuje pole COR_PRF_CODE_INFO struktur, z nichž každý popisuje blok nativního kódu.

Poznámky

Metoda GetCodeInfo4 je podobná GetCodeInfo3 s tím rozdílem, že může vyhledat informace o kódu pro různé nativní verze metody.

Poznámka:

GetCodeInfo4 může aktivovat uvolňování paměti.

Rozsahy jsou seřazené v pořadí zvýšení posunu CIL (Common Intermediate Language).

Po GetCodeInfo4 vrácení je nutné ověřit, že codeInfos vyrovnávací paměť byla dostatečně velká, aby obsahovala všechny COR_PRF_CODE_INFO struktury. Uděláte to tak, že porovnáte hodnotu cCodeInfos s hodnotou parametru cchName . Pokud je velikost struktury COR_PRF_CODE_INFO menší než pcCodeInfos, přidělte větší codeInfos vyrovnávací paměť, aktualizujte cCodeInfos novou, větší velikost a znovu volejteGetCodeInfo4.cCodeInfos

Případně můžete nejprve zavolat GetCodeInfo4 vyrovnávací paměť s nulovou délkou codeInfos , abyste získali správnou velikost vyrovnávací paměti. Pak můžete nastavit codeInfos velikost vyrovnávací paměti na hodnotu vrácenou vynásobenou pcCodeInfosvelikostí COR_PRF_CODE_INFO struktury a znovu zavolat GetCodeInfo4 .

Požadavky

Platformy: Viz podporované operační systémy .NET.

Hlavička: CorProf.idl, CorProf.h

Knihovna: CorGuids.lib

Verze .NET: Dostupné od .NET Core 2.1

Viz také