了解在“便签本”中创建和更新的 CoreData 实体
Posted
技术标签:
【中文标题】了解在“便签本”中创建和更新的 CoreData 实体【英文标题】:Understanding CoreData entities creating and updating in the "scratchpad" 【发布时间】:2012-01-30 21:54:54 【问题描述】:这对很多人来说可能听起来很简单,我正在尝试更多地了解 CoreData 如何管理对象,我在文档中遇到了这个问题:
托管对象上下文充当便签本。您可以创建和 向它注册托管对象,对对象进行更改,以及 根据需要撤消和重做更改。如果您更改托管 与给定上下文关联的对象,这些更改仍然是本地的 该上下文直到您通过发送上下文 a 来提交更改 保存:消息。
我想知道这个便签本是什么。我刚刚运行了 CoreData 分析器,并看到通过创建托管对象并稍后更新其属性,没有对存储进行“Core Data Saves”调用。所以我想所有的东西都记在心里了,如果你能确认的话。 然后,第二个问题,如果得到证实,在处理创建,特别是在保存之前更新托管对象时,是否有任何最佳的 CoreData“内存”实践?
谢谢
【问题讨论】:
【参考方案1】:-
已确认。
是的,您当然不应该在没有保存的情况下在上下文中有太多事务。例如,如果您在循环中创建 10.000 个实体,则根据这些实体的大小,建议不时保存一次。请注意,相反的情况也适用:如果您保存得太频繁(例如,每次在 10.000 循环中),它也非常低效。
【讨论】:
以上是关于了解在“便签本”中创建和更新的 CoreData 实体的主要内容,如果未能解决你的问题,请参考以下文章
如何在 Ember Data 1.13.7 中创建和保存新模型并更新 UI