總綱:
GCD基本概念
GCD如何實現(xiàn)
GCD如何使用
隊列和任務組合
一、GCD基本概念
GCD 全稱Grand Central Dispatch(大中樞隊列調度),是一套低層API,提供了?種新的方法來進?并發(fā)程序編寫。從基本功能上講,GCD有點像NSOperationQueue,他們都允許程序將任務切分為多個單一任務,然后提交??作隊列來并發(fā)的或者串?的執(zhí)行。GCD是C實現(xiàn),?NSOpertionQueue更底層更高效,并且它不是Cocoa框架的一部分 并發(fā)任務會像NSOperationQueue那樣基于系統(tǒng)負載來合適地并發(fā)進?,而串?行隊列同一時間只執(zhí)行單一任務,GCD的API很大程度上基于block。
GCD并發(fā)編程的主要好處歸納
GCD可用于多核的并行運算
GCD會自動利用更多的CPU內核(比如雙核、四核)
GCD會自動管理線程的生命周期(創(chuàng)建線程、調度任務、銷毀線程)
程序員只需要告訴GCD想要執(zhí)行什么任務,不需要編寫任何線程管理