そのため、InstrumentsのLeaksandAllocationツールを使用してアプリのプロファイリングを行っていました。割り当てのためにコールツリーに切り替えることから始め、次に選択されたオプションは作成され、まだ生きているためのものでした。たくさんの画像を読み込むUIScrollViewがあります。そこで、先に進んでUIScrollViewまでスクロールダウンしてみました。私のコードはすべて遅延読み込みを使用しており、画面に表示されている画像のみを読み込みます。一度にすべてを読み込むのではなく、可能な限り再利用しようとします。
これを行うと、特定のメソッドで使用されるメモリの量のように見えます。この例では、imageForTextは常に増加しています。記録の開始から時間Xまで、0MBから5MBになります。そこで、トグルを切り替えて作成と破棄を行い、次に戻って作成と存続を行います。メモリが2〜3MBになっていることがわかります。この切り替えを行わないと、直線的にしか上がらないようです。
私はこれを読み間違えているだけですか、それとも理解していませんか?これはInstrumentのバグであり、作成されたものとまだ生きているものが適切に反映されないため、最新の正確なデータを取得するために前後に切り替える必要がありますか?
これが私のグラフです: