總綱:

  • GCD基本概念

  • GCD如何實(shí)現(xiàn)

  • GCD如何使用

  • 隊(duì)列和任務(wù)組合

 

一、GCD基本概念

     GCD 全稱Grand Central Dispatch(大中樞隊(duì)列調(diào)度),是一套低層API,提供了?種新的方法來進(jìn)?并發(fā)程序編寫。從基本功能上講,GCD有點(diǎn)像NSOperationQueue,他們都允許程序?qū)⑷蝿?wù)切分為多個(gè)單一任務(wù),然后提交??作隊(duì)列來并發(fā)的或者串?的執(zhí)行。GCD是C實(shí)現(xiàn),?NSOpertionQueue更底層更高效,并且它不是Cocoa框架的一部分 并發(fā)任務(wù)會(huì)像NSOperationQueue那樣基于系統(tǒng)負(fù)載來合適地并發(fā)進(jìn)?,而串?行隊(duì)列同一時(shí)間只執(zhí)行單一任務(wù),GCD的API很大程度上基于block。

    GCD并發(fā)編程的主要好處歸納

  • GCD可用于多核的并行運(yùn)算

  • GCD會(huì)自動(dòng)利用更多的CPU內(nèi)核(比如雙核、四核)

  • GCD會(huì)自動(dòng)管理線程的生命周期(創(chuàng)建線程、調(diào)度任務(wù)、銷毀線程)

  • 程序員只需要告訴GCD想要執(zhí)行什么任務(wù),不需要編寫任何線程管理

    網(wǎng)友評(píng)論