GCD
GCD 是苹果公司为多核的并行运算提出的解决方案
GCD 会自动利用更多的CPU内核(比如双核、四核)
GCD 会自动管理线程的生命周期(创建线程、调度任务、销毁线程)
程序员只需要告诉 GCD 想要执行什么任务,不需要编写任何线程管理代码
栅栏函数 dispatch_barrier_async
控制任务执行顺序,同步 保证线程安全
dispatch_barrier_async 前面的任务执行完毕才会来到这里
dispatch_barrier_sync 作用相同,但是这个会堵塞线程,影响后面的任务执行
栅栏函数只能控制同一并发队列 不利于封装
栅栏函数使用全局并发队列没有效果
调度组
控制任务执行顺序
dispatch_group_create 创建组
dispatch_group_async 进组任务
dispatch_group_notify 进组任务执行完毕通知
dispatch_group_wait 进组任务执行等待时间
dispatch_group_enter 进组
dispatch_group_leave 出组
网友评论