【问题标题】:Understanding CoreData entities creating and updating in the "scratchpad"了解在“便签本”中创建和更新的 CoreData 实体
【发布时间】:2012-01-30 21:54:54
【问题描述】:

这对很多人来说可能听起来很简单,我正在尝试更多地了解 CoreData 如何管理对象,我在文档中遇到了这个问题:

托管对象上下文充当便签本。您可以创建和 向它注册托管对象,对对象进行更改,以及 根据需要撤消和重做更改。如果您更改托管 与给定上下文关联的对象,这些更改仍然是本地的 该上下文直到您通过发送上下文 a 来提交更改 保存:消息。

我想知道这个便签本是什么。我刚刚运行了 CoreData 分析器,并看到通过创建托管对象并稍后更新其属性,没有对存储进行“Core Data Saves”调用。所以我想所有的东西都记在心里了,如果你能确认的话。 然后,第二个问题,如果得到证实,在处理创建,特别是在保存之前更新托管对象时,是否有任何最佳的 CoreData“内存”实践?

谢谢

【问题讨论】:

    标签: objective-c core-data nsmanagedobject nsmanagedobjectcontext


    【解决方案1】:
    1. 已确认。
    2. 是的,您当然不应该在没有保存的情况下在上下文中有太多事务。例如,如果您在循环中创建 10.000 个实体,则根据这些实体的大小,建议不时保存一次。请注意,相反的情况也适用:如果您保存得太频繁(例如,每次在 10.000 循环中),它也非常低效。

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多