gcd多线程查看是否执行完毕dispatch_barrier_async
2017-07-31 11:53
483 查看
dispatch_barrier_async能检测到当前那几个线程执行完毕,并在该位置执行你想要的操作
dispatch_queue_t queue =
dispatch_queue_create("queue",
DISPATCH_QUEUE_CONCURRENT);
dispatch_async(queue, ^{
DebugLog(@"线程1");
});
dispatch_async(queue, ^{
DebugLog(@"线程2");
});
dispatch_barrier_async(queue, ^{
DebugLog(@"我在这里!");
});
dispatch_async(queue, ^{
DebugLog(@"线程3");
});
dispatch_async(queue, ^{
DebugLog(@"线程4");
});
dispatch_barrier_async(queue, ^{
DebugLog(@"我在这里!");
});
dispatch_async(queue, ^{
DebugLog(@"线程5");
});
dispatch_barrier_async(queue, ^{
DebugLog(@"我在这里!");
});
dispatch_queue_t queue =
dispatch_queue_create("queue",
DISPATCH_QUEUE_CONCURRENT);
dispatch_async(queue, ^{
DebugLog(@"线程1");
});
dispatch_async(queue, ^{
DebugLog(@"线程2");
});
dispatch_barrier_async(queue, ^{
DebugLog(@"我在这里!");
});
dispatch_async(queue, ^{
DebugLog(@"线程3");
});
dispatch_async(queue, ^{
DebugLog(@"线程4");
});
dispatch_barrier_async(queue, ^{
DebugLog(@"我在这里!");
});
dispatch_async(queue, ^{
DebugLog(@"线程5");
});
dispatch_barrier_async(queue, ^{
DebugLog(@"我在这里!");
});
相关文章推荐
- 多线程知识巩固(七)dispatch_barrier_async
- IOS-12-关于GCD多线程:dispatch_async 与 dispatch_get_global_queue 的使用方法
- GCD编程dispatch_sync(同步)和dispatch_async(异步)方式执行并发队列任务区别
- GCD 之 dispatch_barrier_async
- GCD学习 dispatch_barrier_async
- GCD中的dispatch_barrier_async函数的使用(栅栏函数)
- 判断多线程是否全部执行完毕
- GCD学习(五) dispatch_barrier_async
- GCD学习(五) dispatch_barrier_async
- iOS开发之GCD(7)API dispatch_barrier_async
- GCD学习之dispatch_barrier_async
- 多线程 - dispatch_barrier_async 使用及解析
- GCD学习(五) dispatch_barrier_async
- GCD学习(五) dispatch_barrier_async
- GCD中的dispatch_barrier_async函数的使用(栅栏函数)
- GCD dispatch_barrier_async
- dispatch_group_async可以实现监听一组任务是否完成,完成后得到通知执行其他的操作。这个方法很有用,比如你执行三个下载任务,当三个任务都下载完成后你才通知界面说完成的了
- GCD入门介绍四---- dispatch_group_async和dispatch_barrier_async
- iOS之GCD再谈(dispatch_barrier_async)
- GCD-dispatch_barrier_async