iOS Xcode 6:';RLMEException';,原因:';从错误线程访问的域';

iOS Xcode 6:';RLMEException';,原因:';从错误线程访问的域';,ios,concurrency,ios8,xcode6,realm,Ios,Concurrency,Ios8,Xcode6,Realm,我在领域和并发性方面遇到了一些问题。阅读Cocoa的文档时,我不清楚RLMObjects不能跨线程共享,因此我遇到了一些线程错误,但现在当我尝试在默认领域上执行基本事务时,我收到了一个异常。例如,这是我正在使用的唯一控制器: @implementation ViewController - (void)viewDidLoad { [super viewDidLoad]; RLMRealm *realm = [RLMRealm defaultRealm]; [realm

我在领域和并发性方面遇到了一些问题。阅读Cocoa的文档时,我不清楚RLMObjects不能跨线程共享,因此我遇到了一些线程错误,但现在当我尝试在默认领域上执行基本事务时,我收到了一个异常。例如,这是我正在使用的唯一控制器:

@implementation ViewController

- (void)viewDidLoad {
    [super viewDidLoad];
    RLMRealm *realm = [RLMRealm defaultRealm];
    [realm beginWriteTransaction];
    [realm commitWriteTransaction];
}
这是输出:

*** Terminating app due to uncaught exception 'RLMException', reason: 'Realm accessed from incorrect thread'
*** First throw call stack:
(
0   CoreFoundation                      0x000000010ac83f35 __exceptionPreprocess + 165
1   libobjc.A.dylib                     0x000000010a91cbb7 objc_exception_throw + 45
2   Key                                 0x0000000109b0cca1 _Z14RLMCheckThreadP8RLMRealm + 129
3   Key                                 0x0000000109b697bf -[RLMRealm beginWriteTransaction] + 47
4   Key                                 0x0000000109aafbe1 -[ViewController viewDidLoad] + 177
5   UIKit                               0x000000010b195a90 -[UIViewController loadViewIfRequired] + 738
6   UIKit                               0x000000010b195c8e -[UIViewController view] + 27
7   UIKit                               0x000000010b0b4ca9 -[UIWindow addRootViewControllerViewIfPossible] + 58

还有其他人遇到过并发性和领域问题吗?我喜欢这个概念,但如果这仍然是一个问题,我可能不得不切换到FMDB

您的代码未使用默认域;它正在创造一个新的。尝试使用[RLMRealm defaultRealm]而不是alloc initing一个。@user1447447:如果您有改进文档或错误处理的建议,请打开一个。谢谢@user1447447:在使用
defaultRealm
时,您是否仍看到相同的问题?想知道是否已检查此问题没有什么比有人提出这样的问题、获得反馈并让其他人挂起电话更烦人的了。