iOS GCD使用

簡(jiǎn)述

GCD (Grand Central Dispatch) ,是蘋果開發(fā)的多核編程的解決方案,GCD和其他多線程方案比較起來,使用更簡(jiǎn)單方便。

使用

后臺(tái)執(zhí)行
dispatch_async(dispatch_get_global_queue(0, 0), ^{
        
});

主線程執(zhí)行
dispatch_async(dispatch_get_main_queue(), ^{
        
});

一次性執(zhí)行
static dispatch_once_t onceToken;
dispatch_once(&onceToken, ^{
        
});

延遲執(zhí)行
dispatch_after(dispatch_time(DISPATCH_TIME_NOW, (int64_t)(delayInSeconds * NSEC_PER_SEC)), dispatch_get_main_queue(), ^{
        
});

自定義queue
dispatch_queue_t queue = dispatch_queue_create("com.queue.tt", NULL);
dispatch_async(queue, ^{
        
});
dispatch_release(queue);

高級(jí)用法

dispatch_group_t group = dispatch_group_create();
dispatch_group_async(group, dispatch_get_global_queue(0, 0), ^{
        // task 1
 });
dispatch_group_async(group, dispatch_get_global_queue(0, 0), ^{
        // task 2
});
dispatch_group_notify(group, dispatch_get_global_queue(0, 0), ^{
        //任務(wù)執(zhí)行完成
});

后臺(tái)運(yùn)行


@property (assign, nonatomic) UIBackgroundTaskIdentifier ide;

- (void)beginBackTask
{
    self.ide = [[UIApplication sharedApplication] beginBackgroundTaskWithExpirationHandler:^{
       
        
    }];
}

- (void)endBackTask
{
    [[UIApplication sharedApplication] endBackgroundTask:self.ide];
    self.ide = UIBackgroundTaskInvalid;
}

總結(jié)

總體來說GCD能夠極大地方便開發(fā)者進(jìn)行多線程編程

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

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

  • 今天青石的票圈出鏡率最高的,莫過于張藝謀的新片終于定檔了。 一張滿溢著水墨風(fēng)的海報(bào)一次次的出現(xiàn)在票圈里,也就是老謀...
    青石電影閱讀 10,879評(píng)論 1 2
  • 一、jQuery簡(jiǎn)介 JQ是JS的一個(gè)優(yōu)秀的庫,大型開發(fā)必備。在此,我想說的是,JQ里面很多函數(shù)使用和JS類似,所...
    Welkin_qing閱讀 12,842評(píng)論 1 6
  • 字符串 1.什么是字符串 使用單引號(hào)或者雙引號(hào)括起來的字符集就是字符串。 引號(hào)中單獨(dú)的符號(hào)、數(shù)字、字母等叫字符。 ...
    mango_2e17閱讀 7,790評(píng)論 1 7
  • 一場(chǎng)說走就走的旅行。 簡(jiǎn)單地整理幾件必備旅行用品,7.18日早上8.00準(zhǔn)時(shí)出發(fā)了,計(jì)劃一路南下然后繞西南一圈回恩...
    悠游魚閱讀 3,662評(píng)論 3 6
  • 原來看過一段話,第一厲害的人有能力沒脾氣,第二厲害的人有能力有脾氣,最差的是沒能力有脾氣的人。 以我最...
    涼風(fēng)豆豆閱讀 1,631評(píng)論 2 0

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