NSFetchRequest 导致 SIGABRT 或 EXC_BAD_ACCESS
我正在使用这个简单的代码来执行我的获取请求
NSArray *fetchResults = [moc executeFetchRequest:request error:&error];
NSLog(@" i Want show my result : %@",fetchResults);
->原因 SIGABRT
如果我在创建之后立即在持久存储上使用,则会出现错误。
PS:存储是在填充和请求之间保存的。
但是如果我关闭应用程序并重新打开(在这种情况下商店存在),我就没有错误。
在某些情况下,我可以查看此消息:在抛出“NSException”实例后终止调用,
但我无法访问此异常。
如果我计算获取结果,我有一个很好的数字,这真的很奇怪。
感谢您的帮助。
I'm using this simple code for my fetch request
NSArray *fetchResults = [moc executeFetchRequest:request error:&error];
NSLog(@" i want show my result : %@",fetchResults);
-> cause SIGABRT
If i'm using on my persistent store just after this creation, i have an error.
PS: the store was save between the populate and the request.
But if i close the app, and reopen ( in this case the store exist), i have no error.
in some case i can view this message : terminate called after throwing an instance of 'NSException'
but i can't access to this exception.
if i count the fetch results, i have a good number, it's really strange.
Thanks for help.
如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。
绑定邮箱获取回复消息
由于您还没有绑定你的真实邮箱,如果其他用户或者作者回复了您的评论,将不能在第一时间通知您!
发布评论
评论(1)
好的,我已经找到问题了!
在填充代码中,我的关系之一是通过自动释放插入的。
把这个去掉,现在就OK了。
这不是一个好的解决方案:
简单地删除自动释放:
我在核心数据中忘记了这一点(不要使用释放,只需将对象设置为
nil
)!Okay, I have found the problem!
In the populate code, one of my relationships was insert with an autorelease.
Remove this, and now it's OK.
This is not a good solution:
Simply remove autorelease:
I have forgotten this in core data (don't use release, just set object to
nil
)!