タグ

2009年4月3日のブックマーク (2件)

  • akihiro kamijo: イベントリスナ (AS3) とガーベジコレクション

    不要になったオブジェクトへの参照が残っていると、そのオブジェクトの使用しているメモリを開放することができません。特に複数の参照を持つオブジェクトに対しては、参照の消し忘れによるメモリリークが発生しないよう注意が必要です。 イベントリスナを登録すると、イベントのターゲットになるオブジェクトとイベントリスナを持つオブジェクトの間で参照ができます。AS3 では下のような記述になります。 eventTarget.addEventLisener("type", eventHandler); このコードを実行すると eventTarget と this の間に参照がつくられます。(eventHandler は this オブジェクトのメソッド) ところが、これは明示的な参照の追加ではありません。そのため、参照の削除が必要な場合でも見落としてしまいそうですよね。 というわけで、今回はイベントリスナ追加

  • Flashのメモリを制する5つの秘訣..|_level0.KAYAC

    こんにちは、新米FDのkoyuです。 今回のエントリーは世知辛い社会から魂の解放、いや、パンパンになったメモリの解放についてです。 ActionScript3.0でスライドショーなど動的に画像をロードするようなコンテンツを作成する場合に画像をロードし、removeChildしますよね? しかし、画像に対しての参照が残っていた場合に、読み込んだLoaderやDisplayObjectをremoveChildをしただけではメモリが解放されず、ガンガン膨らんできます。 その様はまるで我が国の国債の発行残高のようです。結果として挙動が悪くなったり、ブラウザが落ちたりします。 では、参照が残るとはどういうことでしょうか? 例として挙げられるのは ・addEventListenerをしている場合 ・変数に代入している場合 などです。 かく言う、私はハマってしまいして、その経験からエントリーを書いた次

    Flashのメモリを制する5つの秘訣..|_level0.KAYAC