2011-12-14 1 views
0

私は確かにひどいメモリ使用をきれいにしようと、Allocations楽器を使います。なぜCALayerはこのメモリをすべて割り当てているのですか?

アップルのアドバイスに従って、メモリが解放されたことを確認するために、繰り返しアクションを実行しながらヒープショットを撮ります。ほとんどの部分については、それがうまく動作しますが、私は、このいずれかで困惑:

stack trace

それはクリーンアップされることは決してありませんことを、どこかのCALayer表示で464キロバイトの割り当てです。最悪の部分は、矛盾しているということです。すぐには起こりません(この場合、私の繰り返した行動の10回目の繰り返しで起こりました。 1ヒットあたりの通常のヒープの成長は20KB未満です(まだそれを上げています)が、これは本当に際立っています。それが起こったとき、またはなぜそれが起こったのかのパターンを見つけることができません。

どのように追跡できますか?

答えて

0

これは、アプリケーションがそのビューに描画を行う場合、フルスクリーンUIViewの描画レイヤをバックするために必要なメモリ量です。ビューが割り当てられて表示されている限り、そのビューをクリーンアップすることはできません。

+0

これは私の最高の推測ですが、私はそれを追跡することができません。他の反復では表示されないビューが表示されず、ビューやビューコントローラも表示されませんAllocationsに残った。 –

+0

あなたのアプリは何か異なるイタレーションを表示しているかもしれません。 – hotpaw2

関連する問題