【发布时间】:2016-02-10 00:49:35
【问题描述】:
我正在使用 NSXPCConnection 并且我的一个接口调用有一个回复块,如下所示:
- (void)addItem:(NSData *) withLabel:(NSString *) reply:(void (^)(NSInteger rc))reply;
我这样称呼:
__block NSInteger status;
[proxy addItem:data withLabel:@"label" reply:^(NSInteger rc)
{
status = rc;
}
];
我的理解是回复块是异步运行的,并且可能在方法返回之后。
我想同步测试返回码,最好的方法是什么?
进一步澄清上面的 sn-p:proxy 对象是使用remoteObjectProxy 方法从NSXPCConnection 对象获得的远程对象。这是一个重要的细节,因为这会影响调用回复块的队列。
【问题讨论】:
标签: objective-c multithreading cocoa xpc nsxpcconnection