核心数据对象的唯一ID
我想添加一个唯一的ID字段到我的托pipe对象实体模型。
我知道核心数据不使用ID关系,但这是不同的。 我需要一种将线程安全数据传递给不同线程的方式,以便新线程可以从该数据中获取托pipe对象。
它可以是任何格式,但理想上只是一个对象/variables/值。
我可以添加一个CFUUID作为一个NSString的对象,但我不知道这是否理想? 我应该做点别的吗?
欢迎任何替代品,甚至只是确认CFUUID是要走的路。
作为@Carl Veazey提到它: NSManagedObjectID
正是你在寻找什么!
这里是一个简短的片段:
NSManagedObject *objectInMainContext = ....; NSManagedObjectID *objectID = objectInMainContext.objectID; dispatch_async(dispatch_get_global_queue(DISPATCH_QUEUE_PRIORITY_DEFAULT, 0), ^{ NSManagedObjectContext *newThreadContext = [[NSManagedObjectContext alloc] initWithConcurrencyType: ... ]; [newThreadContext objectWithID: objectID]; .... .... });