Metodo ICorProfilerInfo4::GetCodeInfo3
Ottiene gli ambiti di codice nativo associati alla versione ricompilata in JIT della funzione specificata.
Sintassi
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[]);
Parametri
functionID
[in] ID della funzione alla quale è associato il codice nativo.
reJitId
[in] Identità della funzione ricompilata in JIT.
cCodeInfos
[in] Dimensione della matrice codeInfos
.
pcCodeInfos
[out] Puntatore al numero totale di strutture COR_PRF_CODE_INFO disponibili.
codeInfos
[out] Buffer fornito dal chiamante. Una volta completato, il metodo contiene una matrice di strutture COR_PRF_CODE_INFO
, ognuna delle quali descrive un blocco di codice nativo.
Commenti
Il GetCodeInfo3
metodo è simile a GetCodeInfo2, ad eccezione del fatto che otterrà l'ID ricompilato JIT della funzione che contiene l'indirizzo IP specificato.
Nota
GetCodeInfo3
può attivare un'operazione di Garbage Collection, mentre GetCodeInfo2 non lo farà. Per altre informazioni, vedere il CORPROF_E_UNSUPPORTED_CALL_SEQUENCE HRESULT.
Gli ambiti vengono ordinati in sequenza crescente in base all'offset CIL (Common Intermediate Language).
Al GetCodeInfo3
termine, è necessario verificare che il codeInfos
buffer sia sufficientemente grande da contenere tutte le strutture COR_PRF_CODE_INFO . A tale scopo, confrontare il valore di cCodeInfos
con il valore del parametro cchName
. Se cCodeInfos
diviso per le dimensioni di una struttura di COR_PRF_CODE_INFO è inferiore a pcCodeInfos
, allocare un buffer più grande codeInfos
, aggiornare cCodeInfos
con le nuove dimensioni maggiori e chiamare GetCodeInfo3
di nuovo.
In alternativa, è possibile chiamare innanzitutto GetCodeInfo3
con un buffer codeInfos
di lunghezza zero per ottenere le dimensioni del buffer corrette. È quindi possibile impostare le dimensioni del codeInfos
buffer sul valore restituito in pcCodeInfos
, moltiplicato per le dimensioni di una struttura COR_PRF_CODE_INFO e chiamare GetCodeInfo3
di nuovo .
Requisiti
Piattaforme: vedere Requisiti di sistema di .NET Framework.
Intestazione: CorProf.idl, CorProf.h
Libreria: CorGuids.lib
Versioni di .NET Framework: Disponibile dalla versione 4.5