何时使用NSManagedObjectContext的save:方法

Koe*_*oen 5 iphone core-data ios

问题很简单:什么时候应该使用save:(NSError **)errorNSManagedObjectContext 的方法?根据我的理解,它唯一能做的就是将更改后的数据保存到持久性存储中.Xcode模板生成的应用程序委托调用save:方法applicationWillTerminate,是否足够?

我的代码详情:

  • 多线程(在后台执行操作,因此使用多个NSManagedObjectContext)
  • 我正在使用一个 NSPersistentStoreCoordinator
  • 使用后合并在后台线程上更改的数据 mergeChangesFromContextDidSaveNotification:
  • 如果您需要了解更多信息,请咨询!

我找不到何时打电话的指南,所以我决定问你们所有人.提前感谢您的回复!

dtu*_*net 6

您总是需要调用save:当您想要保存数据时.您无法始终保证将调用applicationWillTerminate.例如,如果您的应用程序因内存问题(或由于少数其他事情之一而崩溃)而崩溃,那么这将不会被调用.

当用户完成实际生成要保存的数据的操作时,我会保存数据.