在频率方面保存 NSManagedObjectContext
的最佳实践是什么?仅在应用程序切换到后台或即将终止时才保存是否足够?假设使用托管对象的正常语义不受它们保存频率(从内存到 SQLite)的影响是否正确。
(P.S. 编辑指出这个问题“看起来很主观,很可能会被关闭”,但该网站包含有关核心数据最佳实践的其他问题,所以我希望它没问题。)
最佳答案
您应该将其保存在您应用的关键位置。例如,如果您有一个要修改 NSManagedObject
的屏幕, 你需要有一个 cancelChangesButton
同样,你会想要你的 NSManagedObjectContext
在您进入此屏幕时保存,因此您可以调用 undo
并放弃您在此屏幕上所做的所有更改。
基本上您应该在完成处理 NSManagedObject
后保存如果您没有在循环中进行某种处理( for
, while
...)。但是,如果你这样做,你应该在退出循环后保存,不要每次都调用保存,否则它可能会减慢你的应用程序。
关于ios - 保存 NSManagedObjectContext 的最佳实践,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/24051591/