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