Tag: nsfetchedresults

(NSFetchedResultsController):无法读取caching文件来更新存储信息时间戳

我升级了我的项目到Xcode 8.现在,我得到与Xcode 8和iOS 10组合的错误日志。 在下面的代码中将cacheName设置为nil似乎可以修复它。 NSFetchedResultsController *frc = [[NSFetchedResultsController alloc] initWithFetchRequest:fetchRequest managedObjectContext:self.managedObjectContext sectionNameKeyPath:NULL cacheName:@"myCache"]; 我该如何摆脱这个错误日志并在我的FRC中使用caching?

在iOS 5上实现快速有效的核心数据导入

问题 :如何获取我的子上下文以查看父上下文中保留的更改,以便触发我的NSFetchedResultsController更新UI? 这是设置: 你已经有一个应用程序下载并添加大量的XML数据(大约200万条logging,每个logging的大小约为普通段落的文本大小).sqlite文件的大小约为500 MB。 将这些内容添加到Core Data中需要时间,但是您希望用户能够在数据逐渐加载到数据存储中的同时使用该应用程序。 对于用户来说,它是不可见的,不可见的,因为大量的数据正在被移动,所以没有挂起,没有抖动:滚动像黄油。 不过,应用程序更有用,数据添加的越多,所以我们不能永远等待将数据添加到Core Data存储区。 在代码中,这意味着我真的想在导入代码中避免这样的代码: [[NSRunLoop currentRunLoop] runUntilDate:[NSDate dateWithTimeIntervalSinceNow:0.25]]; 该应用程序只有iOS 5,所以它需要支持的最慢的设备是iPhone 3GS。 以下是我迄今用来开发当前解决scheme的资源: 苹果的核心数据编程指南:有效地导入数据 使用自动释放池来减less内存 关系成本。 导入单位,然后在最后修补关系 不要询问是否可以帮助它,它会以O(n ^ 2)的方式减慢速度 批量导入:保存,重置,排出和重复 closures导入时的撤消pipe理器 iDeveloper电视 – 核心数据性能 使用3个上下文:Master,Main和Confinement上下文types iDeveloper TV – Mac,iPhone和iPad更新的核心数据 使用performBlock在其他队列上运行保存会使事情变得更快。 encryption会减慢速度,如果可以的话关掉它。 导入和显示核心数据中的大型数据集Marcus Zarra 您可以通过给当前运行循环留出时间来减慢导入速度,这样用户就能感觉到stream畅。 示例代码certificate,可以执行大量的导入操作并保持UI的响应速度,但速度不及3个上下文和asynchronous存储到磁盘的速度。 我当前的解决scheme 我有3个NSManagedObjectContext实例: masterManagedObjectContext – 这是具有NSPersistentStoreCoordinator并负责保存到磁盘的上下文。 我这样做,所以我的保存可以是asynchronous的,因此非常快。 我这样创build它: masterManagedObjectContext = [[NSManagedObjectContext alloc] initWithConcurrencyType:NSPrivateQueueConcurrencyType]; [masterManagedObjectContext […]