gpt4 book ai didi

iphone - NSManagedObjectContext 保存不会崩溃但会在 objc_exception_throw 上中断

转载 作者:太空狗 更新时间:2023-10-30 03:40:50 25 4
gpt4 key购买 nike

我在这个地址 http://www.cocoabuilder.com/archive/cocoa/288659-iphone-nsmanagedobjectcontext-save-doesn-crash-but-breaks-on-objc-exception-throw.html 遇到了同样的问题

我正在调试一个使用 Core Data 和多线程的应用程序,我在 objc_exception_throw 上有一个断点,它在保存调用中命中了这个断点。 (代码中的第 2 行)

        NSError *error = nil;
[self.managedObjectContext save:&error];
if (error) {
NSLog(@"Error : %@",error);
}

我没有记录任何内容。我在 ios 4.0 -> 4.3 中使用 Xcode 4。我认为这与 Xcode/iOS 版本无关。

最佳答案

看着这个answer表明 CoreData 在内部使用异常来管理它们的程序流。这就是调试器在 objc_exception_throw 中断的原因。据我所知,没有办法禁用它。

编辑:从那时起,现在有一个忽略这些异常的解决方案:Ignore certain exceptions when using Xcode's All Exceptions breakpoint

顺便说一句:不要检查错误,而是使用返回的BOOL 值来确保您的保存调用成功。正确的做法是:

NSError *error = nil;
BOOL success = [self.managedObjectContext save:&error];
if (!success) {
NSLog(@"Error : %@",error);
}

关于iphone - NSManagedObjectContext 保存不会崩溃但会在 objc_exception_throw 上中断,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/7007660/

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