一羡蛾、GCD簡(jiǎn)介
1.什么是GCD
全稱是Grand Central Dispatch
純C語(yǔ)言岂津,提供了非常多強(qiáng)大的函數(shù)
2.有什么優(yōu)勢(shì)
GCD是蘋果公司為多核的并行運(yùn)算提出的解決方案
GCD會(huì)自動(dòng)利用更多的CPU內(nèi)核(比如雙核胶果、四核)
GCD會(huì)自動(dòng)管理線程的生命周期(創(chuàng)建線程秕噪、調(diào)度任務(wù)如贷、銷毀線程)
程序員只需要告訴GCD想要執(zhí)行什么任務(wù)厂置,不需要編寫任何線程管理代碼
二菩掏、隊(duì)列和任務(wù)
1.GCD中有兩個(gè)核心概念
任務(wù):是執(zhí)行什么操作
隊(duì)列:用來(lái)存放任務(wù)
2.GCD使用
定制任務(wù): 就是你想要干什么
將任務(wù)添加到隊(duì)列中 : GCD自動(dòng)將隊(duì)列中的任務(wù)取出來(lái)放到對(duì)應(yīng)的線程中,任務(wù)的取出遵循FIFO
三昵济、任務(wù)
1.用同步的方式執(zhí)行任務(wù)
dispatch_sync(dispatch_queue_tqueue,?dispatch_block_tblock);
queue:隊(duì)列
block:任務(wù)
2.用異步的方式執(zhí)行任務(wù)
dispatch_async(dispatch_queue_tqueue,?dispatch_block_tblock);
四智绸、使用場(chǎng)景
具體的請(qǐng)移步到碼云吧野揪,謝謝 ?NQS-iOS/GCD 初探