我正在试验 AFIncrementalStore,这很棒,但我注意到我遇到了一些性能问题。
具体来说,我正在使用它从 facebook graph api 中删除一堆 facebook 朋友信息,并且我看到一些非常慢的时钟时间用于保存操作。对于上下文,我正在加载大约 900 条记录。Instruments 告诉我问题是这样的:
NSManagedObjectID *backingObjectID = [self objectIDForBackingObjectForEntity:entity withResourceIdentifier:resourceIdentifier];
这反过来又称之为
[backingContext performBlockAndWait:^{
backingObjectID = [[backingContext executeFetchRequest:fetchRequest error:&error] lastObject];
}];
有没有人有使用 AFIncremental 存储更大数据集的经验?
我不太明白的其他一些事情是,为什么所有这些操作都发生在主线程上,而所有这些操作都使用performBlockAndWait
来自具有 PrivateQueueConcurrencyType 的上下文中的操作启动。非常感谢任何帮助!