gpt4 book ai didi

ios - 哪个MagicalRecord保存方法

转载 作者:技术小花猫 更新时间:2023-10-29 11:17:05 25 4
gpt4 key购买 nike

我有一个 NSOperation 子类,它正在下载数据并将其导入 CoreData。

完成此操作后,我想保存上下文并将其合并到默认上下文中。

保存不是在 block 中完成的,它只是同步执行,因为它已经在 BG 线程中。

完成更改后,我应该使用哪种 MR 保存方法?

它们有几十个,但不确定每个都做什么。

我应该使用...

- (void)save:
- (void)saveOnlySelfAndWait;
- (void)saveToPersistentStoreAndWait;

或者我应该在...中进行所有更改

+ (void)saveUsingCurrentThreadContext...

我希望它是同步的,以便我可以控制操作的结束。

至少有人可以解释不同保存之间的差异。

最佳答案

我承认这些方法没有很好的记录。然而,它们很好地遵循了 Core Data 嵌套上下文模型。

  1. 使用 MagicalRecord 不要在 NSManagedObjectContext 上使用 save:MagicalRecord 内置了所有这些额外的错误处理、日志记录和完成处理程序。您想使用它们。

  2. 您似乎知道数据需要去往何处(从一个上下文到根)。关于您需要使用哪种保存方法,这取决于您的层次结构。如果您只有一层深度(即在 defaultContext 的子上下文中),saveOnlySelfAndWait 将保存到 defaultContext。否则,saveToPersistentStoreAndWait 将为您遍历层次结构,一直到数据存储。

  3. andWait 方法是阻塞调用。完成处理程序的调用不是。它们的使用相当简单。

关于ios - 哪个MagicalRecord保存方法,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/15551292/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com