Partager via


ICorProfilerInfo4::GetCodeInfo3, méthode

Obtient les étendues de code natif associées à la version recompilée juste-à-temps de la fonction spécifiée.

Syntaxe

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[]);  

Paramètres

functionID
[in] ID de la fonction à laquelle le code natif est associé.

reJitId
[in] Identité de la fonction recompilée juste-à-temps.

cCodeInfos
[in] Taille du tableau codeInfos.

pcCodeInfos
[out] Pointeur vers le nombre total de structures COR_PRF_CODE_INFO disponibles.

codeInfos
[out] Mémoire tampon fournie par l'appelant. Suite au retour de la méthode, celle-ci contient un tableau de structures COR_PRF_CODE_INFO qui décrivent chacune un bloc de code natif.

Notes

La méthode GetCodeInfo3 est semblable à GetCodeInfo2, à ceci près qu’elle obtient l’ID recompilé juste-à-temps de la fonction contenant l’adresse IP spécifiée.

Notes

GetCodeInfo3 peut déclencher un garbage collection, contrairement à GetCodeInfo2. Pour plus d’informations, consultez le HRESULT CORPROF_E_UNSUPPORTED_CALL_SEQUENCE.

Les étendues sont triées par ordre croissant des offsets du langage CIL (Common Intermediate Language).

Après le retour de GetCodeInfo3, vous devez vérifier que la mémoire tampon codeInfos est suffisante pour contenir toutes les structures COR_PRF_CODE_INFO. Pour ce faire, comparez la valeur de cCodeInfos à celle du paramètre cchName. Si le résultat de la division de cCodeInfos par la taille d’une structure COR_PRF_CODE_INFO est inférieur à pcCodeInfos, allouez davantage de mémoire tampon codeInfos, mettez à jour cCodeInfos pour refléter la nouvelle taille et rappelez GetCodeInfo3.

Vous pouvez également commencer par appeler GetCodeInfo3 avec un tampon codeInfos de longueur nulle pour obtenir la taille correcte du tampon. Vous pouvez ensuite affecter à la taille de la mémoire tampon codeInfos la valeur retournée dans pcCodeInfos, multipliée par la taille d’une structure COR_PRF_CODE_INFO, puis rappeler GetCodeInfo3.

Spécifications

Plateformes : Consultez Configuration requise.

En-tête : CorProf.idl, CorProf.h

Bibliothèque : CorGuids.lib

Versions de .NET Framework : disponible depuis la version 4.5

Voir aussi