第一篇:認識並發
阿新 • • 發佈:2018-09-05
工作 tab 啟動 同一時間 什麽是 發的 之間 cpu bsp
什麽是並發?
在百度百科上對於並發的解釋為:並發,在操作系統中,是指一個時間段中有幾個程序都處於已啟動和運行完畢之間,且這幾個程序都是在同一個處理及上運行,但在任何一個時間刻點上只有一個程序在處理機上運行。
個人理解:並發是為了程序運行的更快,通過多線程執行任務達到快速運行目的。
線程、進程概念區別:
進程和線程都是一個時間段的描述,是CPU工作時間段的描述,只是顆粒大小不同。
比較點 | 進程 | 線程 |
定義 | 進程是執行中一段程序,一旦程序載入到內存中並準備執行,就是一個進程。打開QQ,打開一個進程。 | 單個進程中執行的每個任務就是一個進程。QQ中的文字傳輸,是一個進程 |
單位 | 資源分配的基本單位、調度運行的基本單位、 | 執行運算的基本單位 |
隸屬 | 一個進程可以有多個線程 | 一個線程只屬於一個進程 |
開銷 | 進程創建、維護和管理的開銷大 | 輕量化的進程開銷小。 |
單線程、多線程、並發、並行概念區別:
單線程:程序執行時,執行的程序路徑是連續順序的,必須前面的處理好,後面的才會執行。
例如:你早上上班,正要打卡的時候,手機響了。。你如果先接了電話,等接完了,在打卡,就是單線程。
多線程:一個進程中不只一個線程。在同一個時間段內可以做執行多個程序。
例如:你早上上班,正要打卡的時候,手機響了。。如果你一手接電話,一手打卡。就是多線程。
並發:系統中有多個任務同時存在,同一時間間隔兩個或多個事件在發生。
並行:系統內多個任務同時執行,同一時刻兩個或多個事件發生。
第一篇:認識並發