在没有Realm的后台线程中创建Realm对象,而不是将它们传递给主线程

时间:2015-09-14 16:59:29

标签: ios objective-c cocoa-touch realm

我想知道在线程之间是否支持在没有Realm的情况下传递RLMObjects ...这有点道理,因为否则你将无法在主线程中获取它们......

但有争议的是Realm对象无法在线程之间传递

我尝试了它看起来很有效......但欢迎对此有深刻见解

[self.operationQueue addOperation:[NSBlockOperation blockOperationWithBlock:^{

    RLMObject * object = [[resultClass alloc] initWithValue:dictionary];

    [[NSOperationQueue mainQueue] addOperation:[NSBlockOperation blockOperationWithBlock:^{

        // add object to default realm
        RLMRealm * realm = [RLMRealm defaultRealm];
        [realm beginWriteTransaction];
        [realm addObject:object];
        [realm commitWriteTransaction];

    }]];

}]];

1 个答案:

答案 0 :(得分:1)

尚未添加到Realm中的对象(并且未从Realm中读取)只是普通的NSObject,因此在线程之间传递它们是可以的。