【发布时间】:2011-11-01 21:58:36
【问题描述】:
从 NSOperation 在主线程上的 NSManagedObjectContext 上调用 deleteObject: 时,我是否还需要在主线程上引用 objectID?目前我正在通过以下方式从 NSOperation 中删除主线程中的 NSManagedObject...
NSManagedObjectContext *mainContext = [[[UIApplication sharedApplication] delegate] managedObjectContext];
- (void)deleteObject:(NSManagedObjectID *)objectID
{
// Delete on main context on the main thread
[mainContext performSelectorOnMainThread:@selector(deleteObject:)
withObject:[mainContext objectWithID:objectID]
waitUntilDone:YES];
}
它正在工作,但我想确保它以后不会炸毁我。我不确定的是 [mainContext objectWithID:objectID] 是否从 NSOperation 引用 NSManagedObjectContext,或者由于该方法调用在 performSelectorOnMainThread:withObject:waitUntilDone: 内,是否全部在主线程上执行?
【问题讨论】:
标签: core-data nsmanagedobject nsoperation nsmanagedobjectcontext