Note
Access to this page requires authorization. You can try signing in or changing directories.
Access to this page requires authorization. You can try changing directories.
Gets the size of a specified object.
HRESULT GetObjectSize(
[in] ObjectID objectId,
[out] ULONG *pcSize);
Parameters
objectId
[in] The ID of the object.pcSize
[out] A pointer to the object's size, in bytes.
Remarks
Different objects of the same types often have the same size. However, some types, such as arrays or strings, may have a different size for each object.
The size returned by the GetObjectSize method does not include any alignment padding that may appear after the object is on the garbage collection heap. If you use the GetObjectSize method to advance from object to object on the garbage collection heap, add alignment padding manually, as necessary.
On 32-bit Windows, COR_PRF_GC_GEN_0, COR_PRF_GC_GEN_1, and COR_PRF_GC_GEN_2 use 4-byte alignment, and COR_PRF_GC_LARGE_OBJECT_HEAP uses 8-byte alignment.
On 64-bit Windows, the alignment is always 8 bytes.
Requirements
Platforms: See .NET Framework System Requirements.
Header: CorProf.idl
Library: CorGuids.lib
.NET Framework Versions: 3.5 SP1, 3.5, 3.0 SP1, 3.0, 2.0 SP1, 2.0
See Also
Reference
Change History
Date |
History |
Reason |
---|---|---|
September 2011 |
Added information about alignment padding for objects on the garbage collection heap. |
Information enhancement. |