gpt4 book ai didi

ios6 - 如果指定了affectedStores,NSFetchedResultsController 在 iOS 6 中会崩溃

转载 作者:行者123 更新时间:2023-12-02 13:03:18 25 4
gpt4 key购买 nike

我遇到的问题与此处描述的完全一样:http://fingertwister.tumblr.com/post/32341639626/coredata-problem-with-multiple-stores-using

即,两个存储,一个是静态的,另一个是用户生成的。设置一个 NSFetchedResultsController 以仅从其中一个存储中获取。当 Controller 被释放时,应用程序会因 NSArray 实例上的 EXC_BAD_ACCESS 崩溃。该代码在 iOS 4 和 5 中运行得非常好;崩溃仅发生在 iOS 6 中。

僵尸分析表明,正在发送消息的已释放 NSArray 是 NSFetchedResultsController 的 NSFetchRequest 的“affectedStores”属性。就像上面的链接一样,如果我删除 [fetchRequest setAffectedStores:...] 命令,问题就会消失。而且,就像在链接的示例中一样,就该数组的内存管理而言,我看不出我自己的代码有任何问题。

文档似乎没有说明 iOS 6 在这方面有任何改变。我错过了什么吗?

最佳答案

出现此问题的原因是 CoreData 中的某处内存管理出现问题,导致受影响的Stores 数组提前释放。

您可以通过增加引用计数器来解决此问题: https://gist.github.com/maruno/5451607

关于ios6 - 如果指定了affectedStores,NSFetchedResultsController 在 iOS 6 中会崩溃,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/14396375/

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