2

アプリの起動時に、私の Cocoa アプリは即座に 2 つのCFDataオブジェクトを作成します。1 つはサイズが 34 MB で、もう 1 つはサイズが 57 MB です。これらのオブジェクトが何なのか、Instruments 内のどこから来ているのかを理解できないようです。

楽器

どちらもapplicationWillFinishLaunching完了する前に割り当てられます。

NSURLCache画像キャッシュのクリアと同様にクリアを試みKingfisherましたが、このデータを消去するための他のアイデアを受け入れています。これらの割り当てのソースを見つけるにはどうすればよいですか?

4

1 に答える 1

0

この問題は、NSUserDefaults が原因であることが判明しました。開発の早い段階で、いくつかの大きなファイルをそこに保存しましたが、それらは決して削除されませんでした。

以下は、Instruments コール ツリーが明らかにしたものです。

スタックトレース

そこから使ってみた

NSUserDefaults.resetStandardUserDefaults()

しかし、それは何もしませんでした。また、プロジェクトをクリーンアップしたり、派生データ フォルダーを手動で削除したりしませんでした。

この回答に従うと、CFData の割り当てがゼロになりました: Clearing NSUserDefaults

于 2016-08-12T15:28:26.203 に答える