GCD

2020-07-19  本文已影响0人  豆豆哥哥

简介

什么 是GCD

全称 Grand Central Dispatch
存C语言的 提供了很强大的函数

核心: 将任务添加到队列,并指定队列的执行函数

GCD的优势

GCD是苹果为多核的并行运算提出的解决方案
GCD会自动利用更多的cpu内核(多核)
GCD会自动管理线程的生命周期(线程的创建,调度任务,销毁线程)
--- runable running sleep 阻塞 销毁 cancle
程序只需要告诉GCD 想要执行什么任务,不需要编写任何线程管理代码
核心: 将任务添加到队列,并指定队列的执行函数

任务使用block 封装

任务的block 没有参数也没有返回值

执行函数

异步执行: dispatch_async

不会等待当前执行完毕,就可以执行下一语句
*会开启线程执行block的任务
异步是多线程的代名词

同步执行:dispatch_sync

必须等待当前语句执行完毕,才会执行吓下一条语句
会不开启线程 -- 一般任务所在线程执行

队列

队列是一种数据结构
串行队列

先进先出
每次执行一个
按照添加的顺序依次执行

并发队列

不会按照添加的顺序执行

```
上一篇 下一篇

猜你喜欢

热点阅读