IOS 多線程
#基本概念編程
##1、什麼是進程多線程
- 進程是在系統中運⾏行的⼀一個程序,每一個進程之間是獨⽴立的,每一個進程均運⾏行在其專 有且受保護的內存空間內。
##什麼是線程併發
- ⼀個進程想要執行任務,必須得有線程(至少⼀個線程),線程是進程的基本執⾏單元,一個進程的全部任務都必須在線程中執行。 ###線程的串行
- ⼀個線程中任務的執行是串⾏的,若是要在一個線程中執行多個任務,只能⼀個⼀個的按順序執⾏。
##什麼是多線程框架
- ⼀個進程中能夠開啓多個線程,每一個線程能夠併發/並行執行不一樣的任務,多線程 能夠提交程序的執行效率,⽐如同時執⾏任務ABC。
多線程的原理
- 同一時間,CPU只能執⾏⼀個線程,只有⼀個線程正在執行,多線程併發執行,實際上是CPU快速的在多個線程之間切換,若是CPU的切換線程的時間足夠快,就會形成多線 程併發執⾏行的假象。
多線程有三種多線程編程技術
- 一、NSThread(每一個Thread對象對應一個線程)(使用得⽐比較少,線程的生命週期由咱們本身管理)
- 二、NSOperation(面向對象的線程技術)(基於gcd來實現,常用,生命週期由系統管理)
- 三、GCD(是基於C語⾔的框架,能夠充分利⽤多核,是蘋果推薦使⽤的多線程技術)(常用,生命週期由系統管理)) ##NSThread的使用
##NSOperation 線程
##GCD對象
- (GCD)是Apple開發的一個多核編程的解決方法。該⽅法在Mac OS X 10.6首次推出,並隨後被引⼊到了iOS4.0中。GCD是一個替代諸如NSThread, NSOperationQueue, NSInvocationOperation等技術的很高效和強大的技術
歡迎關注本站公眾號,獲取更多信息