IOS GCD group 的使用

放在異步線程處理耗時操作,當(dāng)所有的才做執(zhí)行完畢時,回到主線程執(zhí)行界面更新或者提示,代碼如下:

? ? dispatch_group_t gt = dispatch_group_create();

? ? for(inti =0; i <10; i ++) {

? ? ? ? dispatch_group_async(gt, dispatch_queue_create(0, 0), ^{

? ? ? ? ? ? NSLog(@"====隊列里面上傳圖片的處理 %@",@(i));

? ? ? ? });

? ? }

? ? //當(dāng)group內(nèi)的block都執(zhí)行完畢時調(diào)用notify,當(dāng)group內(nèi)沒有未完成的block時,則立刻執(zhí)行此方法

? ? dispatch_group_notify(gt, dispatch_get_main_queue(), ^{

? ? ? ? NSLog(@"***隊列內(nèi)的東西執(zhí)行完畢返回到主線程");

? ? });

以上例子,做了10次log的動作,打印了執(zhí)行的順序,每個異步的操作會根據(jù)自己的耗時時間先后不確定順序去執(zhí)行,當(dāng)所有的執(zhí)行完畢時,會執(zhí)行dispatch_group_notify的block。

?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請聯(lián)系作者
【社區(qū)內(nèi)容提示】社區(qū)部分內(nèi)容疑似由AI輔助生成,瀏覽時請結(jié)合常識與多方信息審慎甄別。
平臺聲明:文章內(nèi)容(如有圖片或視頻亦包括在內(nèi))由作者上傳并發(fā)布,文章內(nèi)容僅代表作者本人觀點(diǎn),簡書系信息發(fā)布平臺,僅提供信息存儲服務(wù)。

相關(guān)閱讀更多精彩內(nèi)容

友情鏈接更多精彩內(nèi)容