iOS 10核心数据教程 - NSPersistentContainer

时间:2017-06-07 14:11:56

标签: objective-c iphone core-data xcode8 ios10

我正在尝试关注Apples开发人员文档以使用CoreData。 我刚刚开始学习Objective-C,现在试图围绕CoreData。我想我的概念是OO数据库。

对于我的生活,我无法让它工作,我所做的所有搜索都会带回iOS 9和之前的教程,或者Swift。

任何帮助或指导都将不胜感激。

Core Data - Developer.Apple.Com

1 个答案:

答案 0 :(得分:0)

如果要保持简单,只处理单个managedObjectContext。如果您使用的是NSPersistentContainer,那么这是viewContext。确保始终只从主线程读取和写入核心数据。在许多教程中,您将在单个managedObjectContext中找到类似的简单设置。

掌握了这一点后,您应该学习如何正确使用NSPersistentContainer。要遵循一些简单的规则并不难:

  • 永远不要写viewContext
  • 仅使用performBackgroundTask撰写。
  • 请勿使用performBackgroundTask
  • 中的任何托管对象或上下文
  • 不要在performBackgroundTask中使用任何viewContext managedObject - 传递objectID并在上下文中重新获取它。
  • 不要使用newBackgroundContext - 它仅在您不太可能遇到的极少数情况下有用。
  • 在获取后丢弃所有managedObject。如果需要指向托管对象,请使用fetchedResultsController - 即使它仅用于一个对象