从其MOC的`performBlock`调用中使用NSManagedObject
问题描述:
我知道我不应该在线程之间传递管理对象,但我想知道是否直接从MOC注册到管理对象是否正确。从其MOC的`performBlock`调用中使用NSManagedObject
例如:
NSManagedObjectContext *managedObjectContext = aManagedObject.managedObjectContext;
[managedObjectContext performBlock:^{
aManagedObject.someProperty = "SomeValue";
[aManagedObject.managedObjectContext save:nil];
}];
还是应该我甚至在这个例子中使用objectID
?
答
由于块在上下文的队列上运行,并且您从对象获取上下文。您拥有的代码是在正确的上下文中修改对象,所以我没有看到它的问题。