09/12/03 10:54:41
>>269,270,272
ありがとうございます。
272さんのヒントからマニュアル調べたら
> 第 2 引数は、 このメディアイメージの利用 (use) が 「一度きり」であるかどうかを指定します。 「一度きり」であると指定した場合 (true を指定した場合 ) 、 use 完了と同時に、内部形式に変換される前のリソースを破棄します。
って思いっきり書いてありました・・読んでたはずなのに・・ごめんなさい。
とりあえずgif5つほど読んで試したところ、それっぽい値が出ました。
元のgifサイズ合計 11004
m.use(null, false)時 メモリ使用量 14644
m.use(null, true)時 メモリ使用量 3612
差分 11032
メモリ使用量は
long a;
System.gc();
a=Runtime.getRuntime().freeMemory();
画像読み
System.gc();
System.out.println(a-Runtime.getRuntime().freeMemory());
とやって調べました。絵はちゃんと表示されました。
差分がgifとほぼ同サイズなので、メモリは開放してくれたんだと思いますが、
内部データが3612ってのはおかしいような・・・はかり方が間違ってる可能性大