Iphone 在哪些情况下,我希望调用NSManagedObjectContext的-processPendingChanges?

Iphone 在哪些情况下,我希望调用NSManagedObjectContext的-processPendingChanges?,iphone,core-data,Iphone,Core Data,在哪些情况下,我希望调用NSManagedObjectContext的-processPendingChanges?我使用的两种情况-processPendingChanges涉及撤销分组和临时禁用撤销 例如,我想对涉及删除特定项的所有核心数据操作进行分组(这可能导致删除其他项或对数据模型进行其他更改),因此我使用了如下代码: [[[targetOperationController managedObjectContext] undoManager] beginUndoGrouping]; [

在哪些情况下,我希望调用NSManagedObjectContext的-processPendingChanges?

我使用的两种情况-processPendingChanges涉及撤销分组和临时禁用撤销

例如,我想对涉及删除特定项的所有核心数据操作进行分组(这可能导致删除其他项或对数据模型进行其他更改),因此我使用了如下代码:

[[[targetOperationController managedObjectContext] undoManager] beginUndoGrouping];
[targetOperationController deleteSelectedOperation];
[[targetOperationController managedObjectContext] processPendingChanges];
[[[targetOperationController managedObjectContext] undoManager] endUndoGrouping];
为了保证由
-deleteSelectedOperation
方法中的操作触发的所有数据模型更改都将分组在一起,我使用
-processPendingChanges
确保它们都已注册到undo分组块中

通过使用
-disableundowregistration
-enabledundowregistration
替换撤销分组,可以执行类似于忽略所有数据模型更改的操作,以便撤销