- - PR -
シリアライズできないオブジェクトが消費するメモリサイズをしらべたい
1
投稿者 | 投稿内容 |
---|---|
|
投稿日時: 2005-08-25 19:34
台風が来そうですがまだ会社です。
現在、シリアライズできないオブジェクトが消費するメモリサイズを 調べたいと考えています。シリアライズ可能なオブジェクトならば 方法はあるのですが・・・ どなたかご存知の方はご教授ください。 |
|
投稿日時: 2005-08-25 22:38
JREの実装によって変わると思いますが、
参考までに昔調べてみた時の記憶で書いてみます。 java.lang.Object -> 8 byte これをオブジェクトが使う最小限のメモリです。 配列は12(16かも??)+要素サイズの合計だったかと。 JRE 5.0のjava.lang.Stringだったら、 private final char value[]; private final int offset; private final int count; private int hash; 8(java.lang.Object) + 4 * 4(フィールド数) + 12(配列)に 2 * 文字数で、36 + 2 * 文字数 byteを消費することになります。 #この数値はヒープの減り具合から割り出してます。 #8 byteの内訳はvtblと同期オブジェクトへのポインタ? |
1