如何正确修剪由NSFetchedResultsController引入的对象图?

如果没有引用周期, NSFetchedResultsController可以在不需要的时候正确地将它的pipe理对象变成错误。 但是参考周期不是,所以我不得不自己再次错误的对这些对象。 但是,手动重新创build由NSFetchedResultsControllerpipe理的对象是危险的 。 所以我想知道你的Core Data专家认为是修剪NSFetchedResultsController引入的对象graphics的最佳方法。 谢谢。

更新:

我相信通常FRC应该能够重新故障对象,即使在参考周期。 我的印象是,这并不是因为2012年向苹果公司报告的一个旧的bug,其状态仍然是开放的:FRC从来不会重新插入新插入的对象(保存之后),所以我必须手动重新排除它们。 这是我的testing项目: http : //d.pr/f/Ohe3 。

正如我在这里的评论中提到的那样,FRC负责对所取得的对象进行故障或故障排除。
这反过来打破了您的pipe理对象之间的任何强大的参考周期。

在滚动足够大的表时,您可以通过在对象中设置断点willTurnIntoFault方法来testing这一点。

这是完全没有关于什么其他对象引用这些提取的对象(据我所知)。

我认为你应该避免强烈的参考周期。 通常情况下,没有必要处理你描述的问题。

有关详细的讨论,请参阅使用Objective-C编程的 Apple 编程封装数据章节,您将在其中find标题为“ 避免强参考周期 ”的章节。