Udostępnij za pośrednictwem


ICorProfilerInfo9::GetCodeInfo4 — metoda

Biorąc pod uwagę adres początkowy kodu natywnego, zwraca bloki pamięci wirtualnej, które przechowują ten kod.

Składnia

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

Parametry

pNativeCodeStartAddress
[in] Wskaźnik na początek funkcji natywnej.

cCodeInfos
[in] Rozmiar tablicy codeInfos .

pcCodeInfos
[out] Wskaźnik do całkowitej liczby dostępnych struktur COR_PRF_CODE_INFO .

codeInfos
[out] Bufor dostarczony przez obiekt wywołujący. Po powrocie metody zawiera tablicę COR_PRF_CODE_INFO struktur, z których każdy opisuje blok kodu natywnego.

Uwagi

Metoda jest podobna GetCodeInfo4 do GetCodeInfo3, z tą różnicą, że może wyszukać informacje o kodzie dla różnych natywnych wersji metody.

Uwaga

GetCodeInfo4 może wyzwolić odzyskiwanie pamięci.

Zakresy są sortowane w kolejności zwiększania przesunięcia wspólnego języka pośredniego (CIL).

Po GetCodeInfo4 powrocie należy sprawdzić, czy codeInfos bufor był wystarczająco duży, aby zawierał wszystkie struktury COR_PRF_CODE_INFO . W tym celu porównaj wartość cCodeInfos parametru z wartością parametru cchName . Jeśli cCodeInfos rozmiar struktury COR_PRF_CODE_INFO jest mniejszy niż pcCodeInfos, przydziel większy codeInfos bufor, zaktualizuj cCodeInfos go przy użyciu nowego, większego rozmiaru i wywołaj GetCodeInfo4 ponownie.

Alternatywnie można najpierw wywołać GetCodeInfo4 bufor o zerowej długości codeInfos , aby uzyskać prawidłowy rozmiar buforu. Następnie można ustawić rozmiar buforu codeInfos na wartość zwróconą w pcCodeInfospliku , pomnożona przez rozmiar struktury COR_PRF_CODE_INFO i wywołać GetCodeInfo4 ponownie.

Wymagania

Platformy: zobacz Obsługiwane systemy operacyjne .NET.

Nagłówek: CorProf.idl, CorProf.h

Biblioteka: CorGuids.lib

Wersje platformy .NET: dostępne od wersji .NET Core 2.1

Zobacz też