OC中,創(chuàng)建線程的方法是什么?怎樣指定在主線程中執(zhí)行代碼?如何延時執(zhí)行代碼?

OC中,創(chuàng)建線程的三種方法:

1、NSThread ;特點:使用更加面向?qū)ο?,簡單易用,可直接操作線層對象

創(chuàng)建線程方法一:NSThread * thread = [[NSThread alloc]initWithTarget:self ?selected:@selected(run) object:nil];

【注釋】initWithTarget:在哪里執(zhí)行;object:參數(shù) ; 之后會告訴CPU準備就緒,隨時接受CUP的調(diào)度,當CUP調(diào)度當前線程之后,就會在線程的thread方法中執(zhí)行self的run方法;

創(chuàng)建線程方法二:[NSThread detachNewThreadSelector:@selector(run) toTarget:self withObject:nil];

創(chuàng)建線層方法三:[self performSelectorInBackground:@selector(run) withObject:nil];

方法二與方法三的優(yōu)點:簡單快捷;缺點:無法對線程進行更詳細的設(shè)置;

2、GCD , 目的是取代NSThread等線程技術(shù)、充分利用設(shè)備的多核;

3、NSOperation,基于GCD、比GCD多了一些更簡單試用的功能,使用起來更加面向?qū)ο?br>

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

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

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