很久沒(méi)有更新文章,在此更新一章GCD常用方法和使用場(chǎng)景。
1.異步并行
圖中我們可以看到,隊(duì)列開(kāi)啟了子線程,隊(duì)列繞過(guò)到最后才執(zhí)行。但不絕對(duì)每次都是最后才執(zhí)行。異步并行的任務(wù)的先后是不一定的。
應(yīng)用場(chǎng)景:點(diǎn)擊了注冊(cè)按鈕,異步發(fā)送了請(qǐng)求。此時(shí)也在更新按鈕的秒數(shù)。
2.異步串行
和異步并行差不多,但是異步并行的任務(wù)的先后是一定的。
應(yīng)用場(chǎng)景:比如修改了個(gè)人信息,首先我保存到本地成功了,之后再發(fā)請(qǐng)求。
3.同步并行
和異步截然相反,不開(kāi)啟子線程。因?yàn)闆](méi)有開(kāi)啟子線程,在主線程,所以任務(wù)的順序是遵循FIFO。
應(yīng)用場(chǎng)景:emmmmm,沒(méi)想起來(lái)有啥應(yīng)用場(chǎng)景??
4.同步串行(同上)
5.異步主線
隊(duì)列繞過(guò)到最后才執(zhí)行。因?yàn)闆](méi)有開(kāi)啟子線程,在主線程中的任務(wù)的順序同樣遵循FIFO
應(yīng)用場(chǎng)景:emmmmm,沒(méi)想起來(lái)有啥應(yīng)用場(chǎng)景??
6.同步主線
任務(wù)1在等主隊(duì)列任務(wù)執(zhí)行完才執(zhí)行。所以兩個(gè)任務(wù)互相等待,造成死鎖了
應(yīng)用場(chǎng)景:emmm,大概就是報(bào)復(fù)社會(huì)了吧。
7.Group
圖中我們可以看到當(dāng)任務(wù)都執(zhí)行完畢后,會(huì)觸發(fā)通知。
應(yīng)用場(chǎng)景:個(gè)人資料上傳多張圖片成功后,再回來(lái)發(fā)送更新個(gè)人信息請(qǐng)求。
總結(jié):大致的用法就這些,還是蠻方便的。不足之處請(qǐng)指出。