iOS多线程详解(二)之GCD

CGD 全称Grand Central Dispatch,牛逼的中枢调度器

GCD的优势

1.GCD是苹果公司为多核的并行运算提出的解决方案

GCD会自动利用更多的CPU内核(比如双核、四核)

2.GCD会自动管理线程的生命周期(创建线程、调度任务、销毁线程)

3.程序员只需要告诉GCD想要执行什么任务,不需要编写任何线程管理代码

-1.GCD基本使用 见demo
-2.GCD线程间通信 见demo

Snip20160722_4.png

-3.GCD常用函数 见demo
a.利用队列组异步下载两张图片并合成图片(回到主线程渲染界面)
b.传统迭代和快速迭代的方法对比
c.只执行一次方法(一般用来一个资源在整个程序运行中只加载一次,记得跟懒加载不同(可以由不同的对象调用,每次调用的时候看他有没有初始化) )

static dispatch_once_t onceToken;
dispatch_once(&onceToken, ^{
    NSLog(@"------run");
});

d. “栅栏"阻碍前面的任务(1,2)执行完再执行后面的任务(3,4)

demo

最后编辑于
©著作权归作者所有,转载或内容合作请联系作者
【社区内容提示】社区部分内容疑似由AI辅助生成,浏览时请结合常识与多方信息审慎甄别。
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

相关阅读更多精彩内容

  • 本文首发于我的个人博客:「程序员充电站」[https://itcharge.cn]文章链接:「传送门」[https...
    ITCharge阅读 350,130评论 308 1,927
  • 多线程 在iOS开发中为提高程序的运行效率会将比较耗时的操作放在子线程中执行,iOS系统进程默认启动一个主线程,用...
    郭豪豪阅读 7,484评论 0 4
  • 从哪说起呢? 单纯讲多线程编程真的不知道从哪下嘴。。 不如我直接引用一个最简单的问题,以这个作为切入点好了 在ma...
    Mr_Baymax阅读 7,816评论 1 17
  • 1.英语单词:100个 (重复记忆)25分钟 2.生物题:1道题 (思考做题的思路)10分钟 3.看书:做一个刚好...
    沐星之星星阅读 708评论 0 0
  • 感觉自己终于没有毁了原画,虽然还是有点不自然。
    西瓜苏打阅读 1,243评论 0 0

友情链接更多精彩内容