繁体   English   中英

MagicalRecord saveWithBlock-如何取消操作

[英]MagicalRecord saveWithBlock - how to cancel operation

我正在使用MagicalRecord及其saveWithBlock:方法:

[MagicalRecord saveWithBlock:^(NSManagedObjectContext *localContext) {
    // some work
    // ...
    // -> ups! I changed my mind, I don't want to save!
}];

如果我想取消该块内的保存操作,该如何实现?

例如,当用户登录时,我进行长时间的下载/同步操作-如果用户在此操作期间注销,则想取消saveWithBlock:内部的saveWithBlock:

如果要执行取消操作,则不要将更改包装到MagicalRecord saveWithBlock 您可以简单地使用Context的performBlock API并在不满意的情况下放弃更改。

[context performBlock:^{
    // some work
    // ...
    if(timeToCancel) {
      [context reset];
    } else {
      [context MR_saveToPersistentStoreWithCompletion:nil];
    }
}];

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM