Partager via


ICorProfilerInfo2::GetCodeInfo2, méthode

Obtient les étendues de code natif associées à l'FunctionID spécifié.

HRESULT GetCodeInfo2(
    [in]  FunctionID functionID,
    [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é.

  • 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. Contiendra, après le retour de la méthode, un tableau de structures COR_PRF_CODE_INFO décrivant chacun un bloc de code natif.

Notes

Les étendues sont triées par ordre croissant d'offset MSIL.

Une fois la valeur de GetCodeInfo2 retournée, vous devez vérifier que la taille de la mémoire tampon codeInfos était suffisante pour contenir toutes les structures COR_PRF_CODE_INFO. Pour ce faire, comparez la valeur de cCodeInfos avec celle du paramètre cchName. Si cCodeInfos, divisé par la taille d'une structure COR_PRF_CODE_INFO, est plus petit que pcCodeInfos, allouez une plus grande mémoire tampon codeInfos, mettez à jour cCodeInfos avec la nouvelle taille, plus grande, et appelez de nouveau GetCodeInfo2.

Vous pouvez également commencer par appeler GetCodeInfo2 avec une mémoire tampon codeInfos dont la taille est nulle pour obtenir la taille correcte de la mémoire tampon. Vous pouvez définir ensuite la taille de la mémoire tampon codeInfos à la valeur retournée dans pcCodeInfos divisée par la taille d'une structure COR_PRF_CODE_INFO, et appeler de nouveau GetCodeInfo2.

Pour plus d'informations sur ces deux méthodes, consultez Conventions de méthode de l'API de profilage.

Configuration requise

Plateformes : consultez Configuration requise du .NET Framework.

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

Bibliothèque : CorGuids.lib

Versions du .NET Framework : 4, 3.5 SP1, 3.5, 3.0 SP1, 3.0, 2.0 SP1, 2.0

Voir aussi

Référence

ICorProfilerInfo, interface

ICorProfilerInfo2, interface

Autres ressources

Interfaces de profilage

Profilage (Référence des API non managées)