常用记录

58 阅读1分钟

多个接口同时请求,最终耗时=最慢接口的耗时

dispatch_group_t group = dispatch_group_create();

    for (int i=0; i<5; i++) {

        dispatch_group_enter(group);

        NSLog(@"开始第%i个请求",i+1);

        dispatch_async(dispatch_get_global_queue(0, 0), ^{

            int random = arc4random()%10+1;

            NSLog(@"第%i个接口用时%i秒",i+1,random);

            [NSThread sleepForTimeInterval:random];

            dispatch_group_leave(group);

            NSLog(@"结束第%i个请求",i+1);

        });

    }

    dispatch_group_notify(group, dispatch_get_main_queue(), ^{

        NSLog(@"finish");

    });