核心数据在NSManagedObjectContext类中提供了“executeFetchRequest”方法,我们可以使用该方法从表中获取数据并以任何需要的方式使用它。

现在,存在另一种方法,即使用NSFetchedResultsController并将其提供给UITableView以从表中获取数据。

我的问题是:

  • 哪种方法更快?我是说性能明智,哪一种最好?
  • NSFetchedResultsController是否仅与UITableViews一起使用?
  • NSFetchedResultsController的优缺点是什么。
  • 最后一件事,“为什么我们使用NSFetchedResultsController”,这使它比其他任何方法都更好。
  • 最佳答案



    FRC类旨在自动处理与为表提供复杂和动态数据相关的所有开销。

    如果您拥有的只是一个简单的分区表,其数据永不更改,那么FRC将无济于事。您只需要进行一次获取就可以了。但是,如果数据是通过UI(用户重新排列,删除或添加)或通过代码(例如,正在从服务器更新数据)进行更改,则FRC提供了用于处理所有这些不断变化并确保表格准确反射(reflect)的机制。这些变化。



    使用访存或FRC并没有主要的性能差异,因为它们都使用相同的访存机制从持久性存储中获取数据。如果您具有复杂的动态数据,则使用FRC的速度要比手动复制其功能的速度更快。



    往上看。



    是的,它确实仅对表有用。

    10-07 18:58
    查看更多