在应用启动时,我的 Cocoa 应用会立即创建两个CFData
对象。一个大小为 34 MB,另一个大小为 57 MB。我似乎无法弄清楚这些对象是什么或它们来自 Instruments 的何处。
两者都在applicationWillFinishLaunching
完成之前分配。
我已经尝试清除NSURLCache
和清除我的Kingfisher
图像缓存,并且愿意接受其他想法来清除这些数据。我怎样才能找到这些分配的来源?
在应用启动时,我的 Cocoa 应用会立即创建两个CFData
对象。一个大小为 34 MB,另一个大小为 57 MB。我似乎无法弄清楚这些对象是什么或它们来自 Instruments 的何处。
两者都在applicationWillFinishLaunching
完成之前分配。
我已经尝试清除NSURLCache
和清除我的Kingfisher
图像缓存,并且愿意接受其他想法来清除这些数据。我怎样才能找到这些分配的来源?
这个问题原来是由 NSUserDefaults 引起的。在开发的早期,我在那里保存了一些大文件,这些文件从未被删除。
这是Instruments 所称的树所揭示的内容。
从那里我尝试使用
NSUserDefaults.resetStandardUserDefaults()
但这无济于事。也没有清理我的项目或手动删除派生数据文件夹。
遵循这个答案使我的 CFData 分配为零: Clearing NSUserDefaults