我想知道这种代码是否可以使用
NSManagedObjectContext *moc = [(AppDelegate*)[[UIApplication sharedApplication] delegate] managedObjectContext];
for (NSDictionary *dict in objects) {
Object *object = [NSEntityDescription insertNewObjectForEntityForName:@"object"
inManagedObjectContext:moc];
// Populate model fields with appropriate dictionary keys
}
我提出的原因是,建议您不要跨线程传递对托管对象上下文对象的引用,并想知道这是否确实发生在这里。
答案 0 :(得分:3)
使用for (object in collection)
进行快速枚举与线程无关。所有这些代码都在同一个线程上运行。
答案 1 :(得分:0)
如果该插入操作是线程化的,你应该考虑创建一个后台NSManagedObjectContext来处理它,这是一个过大的帖子并且在之前回答过。
答案 2 :(得分:0)
您正在使用一个ManagedObjectContext,代码中没有线程问题。你正在以正确的方式做到这一点。所有代码都是顺序的。 如果你想使用多个上下文,一个线程中的每个上下文,你应该处理多线程。