COR_HEAPOBJECT, structure

Fournit des informations à propos d’un objet sur le tas managé.

Syntaxe

typedef struct _COR_HEAPOBJECT {  
    CORDB_ADDRESS address;
    ULONG64 size;
    COR_TYPEID type;
} COR_HEAPOBJECT;  

Membres

Membre Description
address Adresse de l’objet en mémoire.
size Taille totale de l’objet, en octets.
type Jeton COR_TYPEID qui représente le type de l’objet.

Notes

Les instances COR_HEAPOBJECT peuvent être récupérées en énumérant un objet d’interface ICorDebugHeapEnum renseigné en appelant la méthode ICorDebugProcess5::EnumerateHeap.

Une instance COR_HEAPOBJECT fournit des informations relatives à un objet actif sur le tas managé ou à un objet non rooté par un objet, mais qui n’a pas encore été collecté par le récupérateur de mémoire.

Pour de meilleures performances, le champ COR_HEAPOBJECT.address est une valeur CORDB_ADDRESS plutôt que la valeur d’interface ICorDebugValue utilisée dans la plupart des API de débogage. Pour obtenir un objet ICorDebugValue pour une adresse d’objet donnée, vous pouvez transmettre la valeur CORDB_ADDRESS à la méthode ICorDebugProcess5::GetObject.

Pour de meilleures performances, le champ COR_HEAPOBJECT.type est une valeur COR_TYPEID plutôt que la valeur d’interface ICorDebugType utilisée dans la plupart des API de débogage. Pour obtenir un objet ICorDebugType pour un ID de type donné, vous pouvez transmettre la valeur COR_TYPEID à la méthode ICorDebugProcess5::GetTypeForTypeID.

La structure COR_HEAPOBJECT comprend une interface COM avec références comptabilisées. Si vous récupérez une instance COR_HEAPOBJECT à partir de l’énumérateur en appelant la méthode ICorDebugHeapEnum::Next, vous devez ensuite libérer la référence.

Spécifications

Plateformes : Consultez Configuration requise.

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

Bibliothèque : CorGuids.lib

Versions de .NET Framework : disponible depuis la version 4.5

Voir aussi