iOS中MagicalRecord的Action方法有什么区别

时间:2015-06-12 10:54:37

标签: ios core-data magicalrecord actionmethod

请解释下面提到的方法之间的区别。

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

注意:有人已经发布了这个问题的答案,但我对这个答案不满意,所以任何人都可以分享正确而简单的答案。

1 个答案:

答案 0 :(得分:0)

经过思考和搜索,我得到了答案......

我承认这些方法并未得到很好的记录。但是,它们很好地遵循了Core Data嵌套上下文模型。

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

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

andWait方法阻止了来电。完成处理程序的调用不是。这些在使用中相当直接。