3

NSManagedObjectContextObjectsDidChangeNotification通知中,我有时会得到NSRefreshedObjectsKey密钥。

我理解刷新的对象是从持久存储/缓存中重新获取对象。

那么是什么导致通知返回刷新的对象呢?对于插入、更新、删除等,这很明显,但是我必须对对象做什么才能让它出现在NSRefreshedObjectsKey键中?例如,它可能只是以某种方式被触摸(相同的值写入相同的键)?

4

1 回答 1

3

如果您在对象上调用 '- (void)refreshObject:(NSManagedObject *)object mergeChanges:(BOOL)flag ',则该对象将包含在刷新的对象中。

我们使用多个线程管理对象上下文,在合并来自 bg 上下文的更改之前,我们使用“现有对象”实现所有更改的对象。这也会导致这些对象包含在“NSRefreshedObjectsKey”键中。

于 2012-10-08T11:36:24.867 回答