1
我有几个异步调用我将在一个呼叫结合:将多个异步调用
-(void) loadA:(ArrayBlock)completion failure(FailureBlock):failure;
-(void) loadB:(ArrayBlock)completion failure(FailureBlock):failure;
-(void) loadC:(ArrayBlock)completion failure(FailureBlock):failure;
将合并的方法,它使用上述的呼叫:
- (void) loadAll:(ObjectBlock)completion;
完成块包含一个名为array[A-C]
的三个数组的对象。如果有任何子调用失败,则将对象中的相应数组简单地设置为零。
代替嵌套这三个区块,并呼吁失败或完成前面的下一个(这变得非常凌乱)的 - 我想要做类似下面的使用GCD:
- 添加所有调用队列
- 等到所有调用完成(调用成功或失败块)
- 合并所有完成块的结果并调用
loadAll
方法的完成块。
我知道这是可能的GCD与同步调用,但我不知道如何实现这与我的三个异步“子调用”。