iOS之GCD

1、创建一个serial queue队列

dispatch_queue_t queue = dispatch_queue_create("com.hnqingyun.queue", NULL);

2、使用dispatch_sync(queue, ^{ 放入线程要执行的具体任务 }); 这个是同步。 异步只需要吧dispatch_sync改成dispatch_async

或者 1、创建并行队列 dispatch_queue_t concurrentQueue = dispatch_get_global_queue(DISPATCH_QUEUE_PRIORITY_DEFAULT, 0);

// 2、异步调用 dispatch_async(concurrentQueue, ^{放入线程要执行的具体任务 });

dispatch_queue_t queue = dispatch_get_global_queue(DISPATCH_QUEUE_PRIORITY_DEFAULT, 0);

dispatch_queue_t queue = dispatch_queue_create(“com.hnqingyun.queue”, NULL);

区别: 第一个是并行队列 处理事件没有顺序。 第二个是串行队列 处理事件按照顺序进行、

dispatch_async(queue, ^{ });

dispatch_group_async(group, dispatch_get_global_queue(DISPATCH_QUEUE_PRIORITY_DEFAULT, 0), ^{

区别: 第一个是添加一个异步处理 线程
第二个是添加一个并发(异步)处理的线程 放在同一个group组里 。 这个东西一般用于 当不知道两个(多个)方法执行多长时间, 但必须用到它们的结果的时候,用第二个方法进行并发处理多个事件 并且在处理完之后 必须执行这个方法 dispatch_group_notify(group, dispatch_get_global_queue(DISPATCH_QUEUE_PRIORITY_DEFAULT, 0), ^{ }) 当组group里的所有任务都结束的时候, 就会调用以下这个分发的block

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值