iOS-受管对象上下文异常

用户名

当我启用异常断点时,我在下面的代码中遇到了异常。

我不知道为什么,但是每次启动该应用程序时,都会触发断点。

关于异常断点我是否不了解,还是应该对托管对象上下文进行调查?

编辑 :

代码示例:

-(void)parseJson
{
    _resultArray = [[NSMutableArray alloc]init];
    BOOL success = YES;
    NSError *saveError = nil;

    [[NSNotificationCenter defaultCenter] addObserver:self selector:@selector(mergeCoreDataChangesToMainContext:) name:NSManagedObjectContextDidSaveNotification object:self.managedObjectContext];

    [self doCustomActionBeforeParsing];
    for (NSDictionary* entries in _jsonArray) {
        id aMTLObject = [[MTLDatabaseManager sharedInstance] mantleObjectModel:_modelClass anItem:entries];
        [self doCustomActionBeforeCoreDataInsertionOfMantleObject:aMTLObject];
        [[MTLDatabaseManager sharedInstance] insertMantleObjectInContext:aMTLObject aManagedObjectContext:self.managedObjectContext];
        if ([self isCancelled])
            break;
    }

    if (![self isCancelled] && [self.managedObjectContext hasChanges]) {
        [self.managedObjectContext performBlockAndWait:^{
            success = [self.managedObjectContext save:&saveError];
        }];
    }

    if (![self isCancelled]) {
        dispatch_async(dispatch_get_main_queue(), ^{
            if (success) {
                [self.delegate parserDidFinishParsingOperation:self fromUrl:self.dataUrl];
            } else {
                [self.delegate parserOperation:self didFailParsingOperationWithError:saveError fromUrl:self.dataUrl];
            }
        });
    }

    [[NSNotificationCenter defaultCenter] removeObserver:self name:NSManagedObjectContextDidSaveNotification object:self.managedObjectContext];
}

这是您使用performAndWait块的方式吗?

异常断点在此行触发:

success = [self.managedObjectContext save:&saveError];

我在这篇文章中看到,我们可以忽略某些例外。忽略异常

忽略CoreData异常是一种好习惯吗?(我猜不是)。

桑迪普·班达里(Sandeep Bhandari)

尝试包装

self.managedObjectContext.performAndWait {
    //all your processing managed objects
    //finally once done 
    try! self.managedObjectContext.save()
}

可能会发生什么,

您可能正在访问managedObjects,或者正在调用managedObjectContext,保存在线程中,该线程可能与self.managedObjectContext所关联的队列不在同一个队列中。

从iOS 5开始,当您使用MainQueue并发或ProvateQueue并发模型时,可以使用ManagedObjectContext的perform或performAndWait来确保仅由与托管对象上下文相关联的同一个队列中的线程访问托管对象上下文。 。

本文收集自互联网,转载请注明来源。

如有侵权,请联系[email protected] 删除。

编辑于
0

我来说两句

0条评论
登录后参与评论

相关文章

来自分类Dev

无法在iOS上创建托管对象上下文

来自分类Dev

为什么保存受管对象上下文更改为isDeleted值?

来自分类Dev

由于某种原因,iOS 中的托管对象上下文为零

来自分类Dev

iOS-CGContextRotateCTM上的上下文无效

来自分类Dev

iOS8键盘扩展获取当前上下文

来自分类Dev

iOS Spotify SDK中的播放器上下文

来自分类Dev

角管模板上下文

来自分类Dev

受管理对象上下文是事务日志吗?

来自分类Dev

iOS Spotify Streaming SDK-错误:上下文失败1006

来自分类Dev

iOS Game Center GKScore上下文中,如何对信息进行编码?

来自分类Dev

为什么此任务等待离开 Xamarin iOS 中的 UI 上下文?

来自分类Dev

Xamarin Forms iOS-当前上下文中不存在运行时

来自分类Dev

迁移到iOS 9后,“无效上下文0x0”

来自分类Dev

如何从iOS上的Grand Central Dispatch Queue异步绘制到GLKit的OpenGL ES上下文

来自分类Dev

如何为CollectionView iOS Swift禁用上下文菜单的长按动画?

来自分类Dev

未知执行上下文错误-将Realm导入Expo React Native IOS应用

来自分类Dev

iOS 13 上下文菜单:如何通过点击预览简单地关闭菜单?

来自分类Dev

上下文菜单选择颜色和框架大小 Swift 5 iOS 13

来自分类Dev

iOS 7.0下无效的上下文0x0和系统降级

来自分类Dev

如何知道(iOS 13+)配置上的上下文菜单触发了哪个UICollectionView单元

来自分类Dev

ios:如何检查应用程序与扩展程序上下文

来自分类Dev

激活iOS 13上下文菜单时,如何防止UIScrollView放大一吨?

来自分类Dev

有什么方法可以覆盖iOS 13上下文菜单的(深色/浅色)用户界面样式?

来自分类Dev

可以以编程方式提供iOS预测性键盘上下文/源文本吗?

来自分类Dev

上下文操作菜单项在iOS PCL项目中不起作用

来自分类Dev

iOS Quartz2D无法从当前上下文获取图像

来自分类Dev

溢出:隐藏不会在 iOS Safari 上创建新的块格式上下文

来自分类Dev

如何获取异常的上下文

来自分类Dev

如何获取C ++异常的上下文?

Related 相关文章

  1. 1

    无法在iOS上创建托管对象上下文

  2. 2

    为什么保存受管对象上下文更改为isDeleted值?

  3. 3

    由于某种原因,iOS 中的托管对象上下文为零

  4. 4

    iOS-CGContextRotateCTM上的上下文无效

  5. 5

    iOS8键盘扩展获取当前上下文

  6. 6

    iOS Spotify SDK中的播放器上下文

  7. 7

    角管模板上下文

  8. 8

    受管理对象上下文是事务日志吗?

  9. 9

    iOS Spotify Streaming SDK-错误:上下文失败1006

  10. 10

    iOS Game Center GKScore上下文中,如何对信息进行编码?

  11. 11

    为什么此任务等待离开 Xamarin iOS 中的 UI 上下文?

  12. 12

    Xamarin Forms iOS-当前上下文中不存在运行时

  13. 13

    迁移到iOS 9后,“无效上下文0x0”

  14. 14

    如何从iOS上的Grand Central Dispatch Queue异步绘制到GLKit的OpenGL ES上下文

  15. 15

    如何为CollectionView iOS Swift禁用上下文菜单的长按动画?

  16. 16

    未知执行上下文错误-将Realm导入Expo React Native IOS应用

  17. 17

    iOS 13 上下文菜单:如何通过点击预览简单地关闭菜单?

  18. 18

    上下文菜单选择颜色和框架大小 Swift 5 iOS 13

  19. 19

    iOS 7.0下无效的上下文0x0和系统降级

  20. 20

    如何知道(iOS 13+)配置上的上下文菜单触发了哪个UICollectionView单元

  21. 21

    ios:如何检查应用程序与扩展程序上下文

  22. 22

    激活iOS 13上下文菜单时,如何防止UIScrollView放大一吨?

  23. 23

    有什么方法可以覆盖iOS 13上下文菜单的(深色/浅色)用户界面样式?

  24. 24

    可以以编程方式提供iOS预测性键盘上下文/源文本吗?

  25. 25

    上下文操作菜单项在iOS PCL项目中不起作用

  26. 26

    iOS Quartz2D无法从当前上下文获取图像

  27. 27

    溢出:隐藏不会在 iOS Safari 上创建新的块格式上下文

  28. 28

    如何获取异常的上下文

  29. 29

    如何获取C ++异常的上下文?

热门标签

归档