当需要等某几个网络请求提交之后再做某事
/**
GCDgroup
*/
- (void)GCDgroup
{
dispatch_group_t group = dispatch_group_create();
dispatch_queue_t queue = dispatch_queue_create(0, 0);
NSMutableArray *arr = [NSMutableArray array];
for (int i = 0; i < 10; i++) {
arr[i] = [NSString stringWithFormat:@"%d",i];
}
for (int i = 0; i < 10; i++) {
dispatch_group_async(group, queue, ^{
if (i == 5) {
[NSThread sleepForTimeInterval:3.0];
EKNSLog(@"第%d个上传任务,等待3秒",i);
} else {
EKNSLog(@"第%d个上传任务",i);
[arr removeObjectAtIndex:10-(i+1)];
}
});
}
dispatch_group_notify(group, queue, ^{
// EKNSLog(@"全部上传完了");
for (int i = 0; i < arr.count; i++) {
EKNSLog(@"%@",arr[i]);
}
});
EKNSLog(@"----");
}
网友评论