GCD之dispatch_group的简单使用

2017-12-21  本文已影响14人  灰色的恢

在商城APP中,有些时候需要先处理图片上传。商品APP中,某个订单的立即评价,存在多个商品,一起评价。先将这多张图上传到服务器并返回图片对应的url,然后再把这些图片url和文字作为动态的属性发布到服务器。


IMG_3046.PNG
    dispatch_group_t group = dispatch_group_create();
    dispatch_async(dispatch_get_global_queue(0, 0), ^{
        for (goodsOrderModel *goodsOrder in self.model.list) {
            if (goodsOrder.selectedPhotos.count>0) {
                dispatch_group_enter(group);
                [self UploadPhotoFile:goodsOrder.selectedPhotos block:^(BOOL isTrue) {
                    if (isTrue) {
                        NSLog(@"上传出错");
                        dispatch_group_leave(group);
                    }else{
                        NSLog(@"上传成功");
                        dispatch_group_leave(group);
                    }
                }];
            }
        }
        dispatch_group_notify(group, dispatch_get_global_queue(0, 0), ^{
            dispatch_async(dispatch_get_main_queue(), ^{
                NSLog(@"其他操作,提交评论");
            });
        });
    });
上一篇 下一篇

猜你喜欢

热点阅读