减少 NSManagedObjectContext 保存时间

Reduce NSManagedObjectContect save time

我正在努力使我的算法更快,因为我发现加载时间很长。我的应用程序从外部数据库加载数千个对象,然后将其保存在设备上。我 运行 使用 ipod touch 进​​行时间分析,我发现 17 seconds/26% 的加载时间花在了执行 NSManagedObjectContexts 的保存:函数上。

我正在使用一个 private nsmanagedobjectcontext 和一个持久存储协调器。

什么会影响节省的时间?如果我将 1/10 的数据保存 10 次而不是将所有数据保存一次,哪个更快?我可以尝试什么来优化节省的时间?

你走在正确的轨道上。我发现优化 Core Data 保存时间的最佳方法确实是 找到正确的批量大小

正如一位评论者所建议的,最好的方法是对其进行测试。没有明确的规则,因为它实际上取决于数据的性质、记录的大小和数量等。

其他策略包括使用 @autorelease 池,这将优化内存使用并可能提高性能。

让我们知道您的结果!