ios線程總結(持續更新ing)

來源:互聯網
上載者:User

標籤:

一、什麼是線程:

1、1個進程要想執行任務,必須得有線程(每1個進程至少要有1條線程)

2、線程是進程的基本執行單元,一個進程(程式)的所有任務都線上程中執行

3、1個線程中任務的執行是串列的,如果要在1各線程中執行多個任務,那麼只能一個一個地按順序執行這些任務,也就是說,在同一時間內,1個線程只能執行1個任務

二、什麼是多線程

1、1個進程中可以開啟多條線程,每條線程可以並行(同時)執行不同的任務  

例:進程 ——>車間  ,線程——>車間工人

2、多線程的原理:同時間,CPU只能處理1條線程,只有1條線程在工作(執行),多線程並發(同時)執行,其實質是CPU快速地在多條線程之間調度(切換),當CPU調度線程的速度足夠塊,就造成了多線程並發執行的假象

三、什麼是主線程

1、一個iOS程式運行後,預設會開啟1條線程,成為“主線程”或“UI線程”

2、主線程的主要作用:顯示,重新整理UI介面 ;處理UI事件(比如點擊事件、滾動事件、拖拽事件等)

3、使用主線程需要注意:別將比較耗時的操作放到主線程,會卡UI(阻塞UI)

 四、iOS中多線程的實現方案

1、pthread

    簡介:一套通用的線程API,適用於Unix\Linux\Windows等系統;跨平台,可移植;使用難度大。

    語言:C

    線程生命週期:程式員管理

    使用頻率:幾乎不用

2、NSThread

     簡介:使用更加物件導向,簡單易用,可直接操作線程對象

     語言:OC

     線程生命週期:程式員管理

     使用頻率:偶爾使用

3、GCD

     簡介:旨在替代NSThread等線程技術,充分利用裝置的多核

     簡介:C

     線程生命週期:自動管理

     使用頻率:經常使用

4、NSOperation

    簡介:基於CGD(底層是GCD),比GCD多了一些簡單實用的功能,使用更加物件導向

    語言:OC

    線程生命週期:自動管理

    使用頻率:經常使用

     

 

ios線程總結(持續更新ing)

聯繫我們

該頁面正文內容均來源於網絡整理,並不代表阿里雲官方的觀點,該頁面所提到的產品和服務也與阿里云無關,如果該頁面內容對您造成了困擾,歡迎寫郵件給我們,收到郵件我們將在5個工作日內處理。

如果您發現本社區中有涉嫌抄襲的內容,歡迎發送郵件至: info-contact@alibabacloud.com 進行舉報並提供相關證據,工作人員會在 5 個工作天內聯絡您,一經查實,本站將立刻刪除涉嫌侵權內容。

A Free Trial That Lets You Build Big!

Start building with 50+ products and up to 12 months usage for Elastic Compute Service

  • Sales Support

    1 on 1 presale consultation

  • After-Sales Support

    24/7 Technical Support 6 Free Tickets per Quarter Faster Response

  • Alibaba Cloud offers highly flexible support services tailored to meet your exact needs.