ICorProfilerInfo::GetObjectSize メソッド

指定したオブジェクトのサイズを取得します。

構文

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

パラメーター

objectId
[in] オブジェクトの ID。

pcSize
[out] オブジェクトのサイズへのポインター (バイト単位)。

解説

重要

このメソッドは、互換性のために残されています。 64 ビットプラットフォームで 4 GB を超えるオブジェクトの場合は COR_E_OVERFLOW を返します。 代わりに ICorProfilerInfo4::GetObjectSize2 メソッドを使用してください。

同じ型の異なるオブジェクトがあるとき、多くの場合、これらのサイズは同じです。 ただし、配列や文字列などの一部の型では、オブジェクトごとにサイズが異なる場合があります。

GetObjectSize メソッドによって返されるサイズには、オブジェクトがガベージ コレクション ヒープに配置された後に出現することがあるアラインメントの埋め込みは含まれません。 GetObjectSize メソッドを使用して、オブジェクトからガベージ コレクション ヒープ上のオブジェクトに進む場合、必要に応じてアラインメントの埋め込みを手動で追加します。

  • 32 ビットの Windows では、COR_PRF_GC_GEN_0、COR_PRF_GC_GEN_1、および COR_PRF_GC_GEN_2 については 4 バイトのアラインメントが使用され、COR_PRF_GC_LARGE_OBJECT_HEAP については 8 バイトのアラインメントが使用されます。

  • 64 ビットの Windows では、アラインメントは常に 8 バイトです。

必要条件

:システム要件」を参照してください。

ヘッダー : CorProf.idl、CorProf.h

ライブラリ: CorGuids.lib

.NET Framework のバージョン: 2.0 以降で使用可能

関連項目