iOS多線程編程知多少
在iOS的世界里有兩種實(shí)現(xiàn)多線程的方式:
多線程是一個(gè)比較輕量級(jí)的方法來(lái)實(shí)現(xiàn)單個(gè)應(yīng)用程序內(nèi)多個(gè)代碼執(zhí)行路徑。在系統(tǒng)級(jí)別內(nèi),程序并排執(zhí)行,系統(tǒng)分配到每個(gè)程序的執(zhí)行時(shí)間是基于該程序的所需時(shí)間和其他程序的所需時(shí)間來(lái)決定的。然而在每個(gè)應(yīng)程序的內(nèi)部,存在一個(gè)或多個(gè)執(zhí)行線程,它同時(shí)或在一個(gè)幾乎同時(shí)發(fā)生的方式里執(zhí)行不同的任務(wù)。
第一種:GCD
官網(wǎng)鏈接
一篇文章:
第二種:NSOperationQueue和NSOperation
一篇文章:
NSOperationQueue和NSOperation的使用方法
關(guān)于這兩者的比較,支持者們意見(jiàn)不統(tǒng)一太統(tǒng)一。這個(gè)還是建議初學(xué)者都用用,然后自己權(quán)衡。適時(shí)選擇合適的。這里也附上stackoverflow上的討論情況。
http://stackoverflow.com/questions/10373331/nsoperation-vs-grand-central-dispatch