Freigeben über


ICorProfilerInfo9::GetCodeInfo4-Methode

Gibt anhand der Startadresse des nativen Codes die Blöcke des virtuellen Arbeitsspeichers zurück, in denen dieser Code gespeichert ist.

Syntax

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

Parameter

pNativeCodeStartAddress
[in] Ein Zeiger auf den Anfang einer nativen Funktion.

cCodeInfos
[in] Die Größe des codeInfos-Arrays.

pcCodeInfos
[out] Ein Zeiger auf die Gesamtanzahl verfügbarer COR_PRF_CODE_INFO-Strukturen.

codeInfos
[out] Ein vom Aufrufer bereitgestellter Puffer. Nach dem Ausführen enthält die Methode ein Array aus COR_PRF_CODE_INFO-Strukturen, von denen jede einen Block des systemeigenen Codes beschreibt.

Bemerkungen

Die GetCodeInfo4-Methode ähnelt GetCodeInfo3 mit dem Unterschied, dass sie Codeinformationen für verschiedene native Versionen einer Methode suchen kann.

Hinweis

GetCodeInfo4 kann eine Garbage Collection auslösen.

Die Wertebereiche sind in aufsteigender Reihenfolge des CIL-Offsets (Common Intermediate Language) sortiert.

Nachdem GetCodeInfo4 zurückgegeben wurde, müssen Sie überprüfen, ob der codeInfos-Puffer groß genug war, um alle COR_PRF_CODE_INFO-Strukturen aufzunehmen. Vergleichen Sie hierzu den Wert von cCodeInfos mit dem Wert des cchName-Parameters. Wenn cCodeInfos dividiert durch die Größe einer COR_PRF_CODE_INFO-Struktur kleiner als pcCodeInfos ist, weisen Sie einen größeren codeInfos-Puffer zu, aktualisieren Sie cCodeInfos mit der neuen Größe, und rufen Sie dann GetCodeInfo4 erneut auf.

Alternativ können Sie zuerst GetCodeInfo4 mit einem codeInfos-Puffer der Länge 0 (NULL) aufrufen, um die richtige Puffergröße zu ermitteln. Sie können dann die Größe des codeInfos-Puffers auf den in pcCodeInfos zurückgegebenen Wert festlegen, multipliziert mit der Größe einer COR_PRF_CODE_INFO-Struktur, und GetCodeInfo4 erneut aufrufen.

Anforderungen

Plattformen: Weitere Informationen finden Sie unter Von .NET unterstützte Betriebssysteme.

Header: CorProf.idl, CorProf.h

Bibliothek: CorGuids.lib

.NET-Versionen: verfügbar seit .NET Core 2.1

Siehe auch