2

在应用启动时,我的 Cocoa 应用会立即创建两个CFData对象。一个大小为 34 MB,另一个大小为 57 MB。我似乎无法弄清楚这些对象是什么或它们来自 Instruments 的何处。

仪器

两者都在applicationWillFinishLaunching完成之前分配。

我已经尝试清除NSURLCache和清除我的Kingfisher图像缓存,并且愿意接受其他想法来清除这些数据。我怎样才能找到这些分配的来源?

4

1 回答 1

0

这个问题原来是由 NSUserDefaults 引起的。在开发的早期,我在那里保存了一些大文件,这些文件从未被删除。

这是Instruments 所称的树所揭示的内容。

堆栈跟踪

从那里我尝试使用

NSUserDefaults.resetStandardUserDefaults()

但这无济于事。也没有清理我的项目或手动删除派生数据文件夹。

遵循这个答案使我的 CFData 分配为零: Clearing NSUserDefaults

于 2016-08-12T15:28:26.203 回答