ICorProfilerInfo4::GetCodeInfo3 Metodu
Belirtilen işlevin JIT tarafından yeniden derlenmiş sürümüyle ilişkili yerel kodun uzantılarını alır.
Sözdizimi
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[]);
Parametreler
functionID
[in] Yerel kodun ilişkilendirildiği işlevin kimliği.
reJitId
[in] JIT yeniden derlenmiş işlevinin kimliği.
cCodeInfos
[in] Dizinin boyutu codeInfos
.
pcCodeInfos
[out] Kullanılabilir toplam COR_PRF_CODE_INFO yapı sayısına işaret eden bir işaretçi.
codeInfos
[out] Arayan tarafından sağlanan arabellek. yöntemi döndürdüğünde, her biri yerel kod bloğunu COR_PRF_CODE_INFO
açıklayan bir yapı dizisi içerir.
Açıklamalar
yöntemi GetCodeInfo3
GetCodeInfo2'ye benzer, ancak belirtilen IP adresini içeren işlevin JIT tarafından yeniden derlenmiş kimliğini alır.
Not
GetCodeInfo3
bir çöp toplamayı tetikleyebilir ancak GetCodeInfo2 tetiklemez. Daha fazla bilgi için bkz. HRESULT CORPROF_E_UNSUPPORTED_CALL_SEQUENCE .
Kapsamlar, Ortak Ara Dil (CIL) uzaklığını artırmaya göre sıralanır.
Döndürdükten sonra GetCodeInfo3
, arabelleğin codeInfos
tüm COR_PRF_CODE_INFO yapılarını içerecek kadar büyük olduğunu doğrulamanız gerekir. Bunu yapmak için değerini cCodeInfos
parametresinin cchName
değeriyle karşılaştırın. bir COR_PRF_CODE_INFO yapısının boyutuna bölünürsecCodeInfos
, daha pcCodeInfos
büyük codeInfos
bir arabellek ayırın, yeni, daha büyük boyutla güncelleştirin cCodeInfos
ve yeniden çağırınGetCodeInfo3
.
Alternatif olarak, doğru arabellek boyutunu elde etmek için ilk GetCodeInfo3
olarak sıfır uzunlukta codeInfos
bir arabellek çağırabilirsiniz. Daha sonra arabellek boyutunu, içinde döndürülen pcCodeInfos
değere COR_PRF_CODE_INFO yapısının boyutuyla çarparak ayarlayabilir codeInfos
ve yeniden çağırabilirsinizGetCodeInfo3
.
Gereksinimler
Platform: Bkz. Sistem Gereksinimleri.
Üstbilgi: CorProf.idl, CorProf.h
Kitaplığı: CorGuids.lib
.NET Framework Sürümleri: 4.5 sürümünden itibaren kullanılabilir