當前位置:
首頁 >
iOS多线程——概念与原理
發布時間:2024/1/1
48
豆豆
生活随笔
收集整理的這篇文章主要介紹了
iOS多线程——概念与原理
小編覺得挺不錯的,現在分享給大家,幫大家做個參考.
1. 進程的定義
進程是指在系統中正在運行的一個應用程序,在iOS系統中,每個進程之間都是獨立的,每個進程都運行在其專用的且受保護的內存中。
2. 線程的定義
線程是進程的基本執行單元,一個進程的所有任務都在線程中執行,進程想要執行任務,必須且至少有一個線程。
APP程序啟動后默認會開啟一個線程,即主線程或者UI線程。
3. 線程與進程的關系與區別
4. 多線程的意義
優點:
缺點:
5. 多線程的原理
任務的執行依賴于線程,那么多線程執行則表示多個任務同時執行,而CPU同一時間只能執行一個任務,那么多線程是怎么來的呢?
CPU在執行任務的時候,并不是一條道走到黑的,而是在多個線程之間快速的切換,快到我們以為多個線程是在同時執行。
所以單個CPU的多線程就是快速的在多個線程中不斷的切換調用,已達到所有線程都在同時進行的效果。
現在很多設備都是雙核,四核或者八核,多個CPU同時處理,才是真正意義上的多線程,更能加快系統的運行處理速度。
6. 線程的生命周期
線程也有自己的生命周期的,當一個線程創建后,執行任務,任務結束后,線程自動銷毀,當然這只是簡單的描述,實際會比這復雜很多,下面看一個圖1:
7. 線程與runloop的關系
runloop 和線程是息息相關的,線程的作用是用來執行特定的一個或多個任務,在默認情況下,線程執行完之后就會退出,就不能再執行任務了。這時我們就需要采用一種方式來讓線程能夠不斷地處理任務,而不退出。所以就有了runloop。
本篇文章主要介紹了iOS多線程的一些概念原理等,未涉及到的部分還請關注后續的文章。
總結
以上是生活随笔為你收集整理的iOS多线程——概念与原理的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: 老师助手为什么总是服务器错误,我按照老师
- 下一篇: 企业运维监控平台架构设计与实现-高俊峰-