从其MOC的`performBlock`调用中使用NSManagedObject

问题描述:

我知道我不应该在线程之间传递管理对象,但我想知道是否直接从MOC注册到管理对象是否正确。从其MOC的`performBlock`调用中使用NSManagedObject

例如:

NSManagedObjectContext *managedObjectContext = aManagedObject.managedObjectContext; 

[managedObjectContext performBlock:^{ 
    aManagedObject.someProperty = "SomeValue"; 
    [aManagedObject.managedObjectContext save:nil]; 
}]; 

还是应该我甚至在这个例子中使用objectID

由于块在上下文的队列上运行,并且您从对象获取上下文。您拥有的代码是在正确的上下文中修改对象,所以我没有看到它的问题。