ICorProfilerInfo4::GetCodeInfo3-Methode
Ruft die Erweiterungen des systemeigenen Codes ab, die der JIT-kompilierten Version der angegebenen Funktion zugeordnet sind.
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[]);
Parameter
functionID
[in] Die ID der Funktion, der der systemeigene Code zugeordnet ist.
reJitId
[in] Die Identität der erneut JIT-kompilierten 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 GetCodeInfo3
-Methode ähnelt GetCodeInfo2. Sie ruft jedoch die erneut JIT-kompilierte ID der Funktion ab, die die angegebene IP-Adresse enthält.
Hinweis
GetCodeInfo3
kann eine Garbage Collection auslösen. Bei GetCodeInfo2 ist dies nicht der Fall. Weitere Informationen finden Sie unter CORPROF_E_UNSUPPORTED_CALL_SEQUENCE HRESULT.
Die Wertebereiche sind in aufsteigender Reihenfolge des CIL-Offsets (Common Intermediate Language) sortiert.
Nachdem GetCodeInfo3
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 GetCodeInfo3
erneut auf.
Alternativ können Sie zuerst GetCodeInfo3
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 GetCodeInfo3
erneut aufrufen.
Anforderungen
Plattformen: Informationen finden Sie unter Systemanforderungen.
Header: CorProf.idl, CorProf.h
Bibliothek: CorGuids.lib
.NET Framework-Versionen: Seit Version 4.5 verfügbar.