AS3でLoaderクラスを使って画像(gifやjpgなどのビットマップ)を読み込んだ場合、
loader.unload();
だけだとメモリが解放されない現象を確認した。
loaderで読み込んだのが画像だった場合、BitmapDataクラスの
disopse();
を実行する事により、メモリが解放されるのを確認しました。
具体的にはこんな感じ。
(変数loaderはLoaderクラスのインスタンス)
if (loader.content is Bitmap)
{
loader.content.bitmapData.dispose();
}
これでメモリが解放された。
メモリの確認は、下記サイトで使用容量が分かる関数を教わりました。
ASのガベージコレクトは参照カウント方式じゃなかった
http://www.imajuk.com/blog/archives/2008/04/as_2.html
どうもありがとうございます。
環境:
OSX 10.5
Flash CS3

コメントする