核心数据:可能被保存或释放的对象

时间:2015-09-07 05:51:54

标签: ios core-data nsmanagedobject nsmanagedobjectcontext

在使用Core Data更新应用程序时,新功能是异步过程,用于同步应用程序和后端之间的信息。
问题是在应用程序中,在执行向导过程时会构建一些NSManagedObject,在向导结束时,用户可以“保存”#34;或"丢弃" 。
这意味着如果在向导期间进行同步过程,则可以将一些对象保存到具有不完整数据的持久性存储中,并且它们可以"'#34;被释放(由于同步结束时的保存呼叫)。
在旧版本中,由于同步是手动过程,所以不是问题 我正在考虑不同的解决方案,最简单的方法是在用户在结束时或向导期间按取消时删除对象,但我想知道是否有其他更好的解决方案可用于其他类似的解决方案案例。 我发现这个问题与此问题有关:

  1. How to Deal with Temporary NSManagedObject instances?
  2. How to use Core Data models without saving them?
  3. 在第一个问题中,建议是在创建NSManagedObject实例并在保存对象之前添加其值时将托管对象上下文保留为nil,但是阅读它看起来不会很好的注释,可能是在你的对象也与具有托管对象上下文的对象有一些关系 有人说还要创建一个子管理对象上下文,但M. Zarra似乎不喜欢它(如果你买了一本核心数据书,你知道Marcus知道"关于核心数据的东西)#br / > 第二个建议创建一个内存中的新商店,但它没有解释如何将对象从一个移动到另一个,我猜测一种副本就没问题了。

    哪一个可能是最好的方法?我正在寻找最低限度的重构和回归解决方案。

0 个答案:

没有答案