タグ

as3とmemoryに関するruedapのブックマーク (4)

  • Flash AS3のガベージコレクションを攻略する4つのTips - R26

    Flash AS3でCPU負荷の高い処理、多くのメモリを使う処理、アニメーションを長時間連続して再生する処理を行う場合には、メモリの管理をすることが必須です。 Flash AS3においてメモリ管理について知っておくべきTipsをまとめました。 その1 ガベージコレクションについての基知識を仕入れましょう リファレンス(参照)、メモリスコープ、メモリ空間におけるアドレスとデータについて、ガベージコレクションがなにをしているのか知る必要があります。 hoge = null; delete hoge; の二つの違いも重要です。C, C++とは、これらの意味が異なりますので、押さえておきましょう。 ガベージコレクションにおいて一番難しい概念は「参照回数」でしょう。C++などのクラス設計においても参照回数という概念はありましたが、計測方法が異なります。 参考URLは akihiro kamijo:

    Flash AS3のガベージコレクションを攻略する4つのTips - R26
  • blog.ipuheke.jp» Blog Archive » メモリリーク対策のためにremoveEventListenerする方法の一考察

    AS3のメモリリークに関しては、数々のFlasherさんのブログで語られていますが、共通して「不要になったオブジェクトをnullするだけじゃなくて、そのオブジェクトの全てのイベントをremoveEventListenerしてね」ということが書かれていると思います。 僕もそこらへんを気をつけて、AS3でコーディングしていたりするのですが、たいてい、 不要になる = 表示リストから消すとき(removeChildするとき) というのがほとんどなので、不要になるオブジェクトのクラスにREMOVED_FROM_STAGEのハンドラをつけて、その中で全てのイベントをremoveEventListenerしています。もちろんこの「Event.REMOVED_FROM_STAGEのハンドラ」自身もその中でremoveEventListenerしてます。 以下サンプルです。 PLAIN TEXT Ac

  • GCWatcher:GCの起動とオブジェクトの回収状況を監視するための方法

    GCを強制的に起動する方法について追記しました(4/8) fladdictさんのAS3でガベージコレクションを見張る画期的方法メモにて、 弱参照のDictionaryのオブジェクトキーを利用して、対象のオブジェクトがガベッジコレクションされたかどうかを見張ることができるんじゃね?? という面白そうなお題があがっていたので実装、検証を行ってみました。 検証のために実装したクラスGCWatcherには、次の二つの機能があります。 GCが起動した場合にGARBAGE_COLLECTイベントを発行する 監視したオブジェクトを監視リストに追加し、GCに回収された場合にCHANGEイベントを発行する このクラスを使うと、fladdictさんがエントリー中で書いていた、 onGarbageCollection イベントを発行できるし、DictionaryのキーをダンプすればGCされそこねたオブジェクトの

  • Flash Player 9 のガーベジコレクション - akihiro kamijo

    Flash/Flex のアプリケーションを開発していると (たまには) メモリリークとか気になることもあるかと思います。今回は Flash Player 9 のガーベジコレクションについてです。詳細な実装レベルだと、Flash Player のアップデート時に、ガーベジコレクション周りでも多少の変更が行われたりしていますが、いまのところ基的なモデルは変わっていません。今回はこの ”基的なモデル” を紹介します。 Flash Player 8 以前は少し違ったモデルになっています。以下の記述内では Flash Player とあったら Flash Player 9 のことだと思ってください。 Flash Player のメモリ確保 Flash Player のメモリ確保時の動作は特にユニークなものではありません。が、話の基になるのでとりあえず以下概要です。 メモリの確保は負荷の高い部

  • 1