GCD 并发数控制方案

来源:互联网 发布:淮南安广网络客服电话 编辑:程序博客网 时间:2024/04/19 09:11
    //创建一个组    dispatch_group_t group = dispatch_group_create();    //控制并发数    dispatch_semaphore_t semaphore = dispatch_semaphore_create(5);        // 获取全局并发队列    dispatch_queue_t queue = dispatch_get_global_queue(DISPATCH_QUEUE_PRIORITY_DEFAULT, 0);        for (int i=0; i<100; i++) {                //等待信号        dispatch_semaphore_wait(semaphore, DISPATCH_TIME_FOREVER);                dispatch_async(queue, ^{                        NSLog(@"%i",i);                        sleep(10);                        //发送信号            dispatch_semaphore_signal(semaphore);                    });            }        dispatch_group_wait(group, DISPATCH_TIME_FOREVER);

0 0
原创粉丝点击