iOS开发之GCD(2)API Dispatch Queue

本文介绍了iOS开发中GCD的使用,包括如何生成Serial和Concurrent Dispatch Queue,并探讨了在不同iOS SDK版本下Dispatch Queue的内存管理,特别是在ARC环境下的变化,以及如何在Objective-C中正确管理Dispatch Queue的生命周期。
摘要由CSDN通过智能技术生成

生成dispatch queue的API:

(1)生成Serial Dispatch Queue(一个线程,追加的任务按照追加顺序一次执行)

        dispatch_queue_t mySerialDispatchQueue = dispatch_queue_create("com.faterman.gcd_demo_mySerialDispatchQueue", NULL);

tips:1.这种方式可以避免数据竞争

   2.生成多个Serial Dispatch Queue并各自追加任务,也可以实现并发处理。但是要根据需要合理控制生成数量。


(2)生成Concurrent Dispatch Queue(由XNU内核启动合理数量的线程,并发执行追加的任务)

        dispatch_queue_t mySerialDispatchQueue = dispatch_queue_create("com.faterman.gcd_demo_mySerialDispatchQueue", DISPATCH_QUEUE_CONCURRENT);

Dispatch Queue的内存管理(ARC讨论):

(1)在6.0的SDK之前,虽然已经有了ARC技术,但是Dispatch Queue

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值