好處:
1.使用線程可以把耗時任務(wù)放到后臺去處理。
2.用戶界面可以更加吸引人,比如用戶點擊了一個按鈕去觸發(fā)某些事件的處理,可以彈出一個進度條來顯示處理的進度。
3.程序的運行效率可能提高。
4.在一些等待任務(wù)實現(xiàn)上如用戶輸入、文件讀寫和網(wǎng)絡(luò)收發(fā)數(shù)據(jù)等,縣城就比較有用。
缺點:
1.如果有大量的線程,會影響性能,因為操作系統(tǒng)需要在他們之間切換。
2.更多的線程需要更多的內(nèi)存空間。
3.線程的中止需要考慮其對程序運行的影響。
通常塊模型數(shù)據(jù)是在多個線程間共享的,需要防止線程死鎖情況的發(fā)生。
實現(xiàn)多線程的方法:
1.NSObject的類方法:- (void)perform.selectornBackground/OnMainThread:(SEL)aSelector withObject:(id)arg
2.NSthread;
3.NSOperation;
4.GCD;