Metodo ICorProfilerInfo::GetObjectSize

Ottiene le dimensioni di un oggetto specificato.

Sintassi

HRESULT GetObjectSize(  
    [in]  ObjectID objectId,  
    [out] ULONG  *pcSize);  

Parametri

objectId
[in] ID dell'oggetto.

pcSize
[out] Puntatore alle dimensioni dell'oggetto, in byte.

Commenti

Importante

Questo metodo è obsoleto. Restituisce COR_E_OVERFLOW per gli oggetti maggiori di 4 GB su piattaforme a 64 bit. Usare invece il metodo ICorProfilerInfo4::GetObjectSize2 .

Oggetti diversi degli stessi tipi hanno spesso le stesse dimensioni. Tuttavia, alcuni tipi, ad esempio matrici o stringhe, possono avere dimensioni diverse per ogni oggetto.

Le dimensioni restituite dal GetObjectSize metodo non includono alcuna spaziatura interna di allineamento che può essere visualizzata dopo che l'oggetto si trova nell'heap di Garbage Collection. Se si usa il GetObjectSize metodo per passare dall'oggetto all'oggetto nell'heap di Garbage Collection, aggiungere manualmente la spaziatura interna dell'allineamento, se necessario.

  • In Windows a 32 bit, COR_PRF_GC_GEN_0, COR_PRF_GC_GEN_1 e COR_PRF_GC_GEN_2 usare l'allineamento a 4 byte e COR_PRF_GC_LARGE_OBJECT_HEAP usa l'allineamento a 8 byte.

  • In Windows a 64 bit l'allineamento è sempre di 8 byte.

Requisiti

Piattaforme: vedere Requisiti di sistema di .NET Framework.

Intestazione: CorProf.idl, CorProf.h

Libreria: CorGuids.lib

Versioni di .NET Framework: Disponibile dalla versione 2.0

Vedi anche