第一次同步总是很短,因为它不会执行任何获取请求。
核心数据喜欢: 批量请求 小批量
对于批量请求,Mundi已经完美地回答了这个问题。这个较小的集合将只是您需要更新的集合。
下一部分涉及较小的批次。如果使用多线程分解,可以极大地加快更新速度。由于您正在保存并且我对数据集知之甚少,请查看 关于cimg的多线程核心数据教程 。
首先,获取您想要比较的所有歌曲的ID。然后,您只需前往持久性商店即可获得新歌。
获取ID,
NSArray *allIDs = [existingSongs valueForKeyPath:@"persistentID"];
然后用这样的谓词进行提取。
[NSPredicate predicateWithFormat:@"persistentID NOT IN %@", allIDs];