多執行緒與多程序的介紹和區別

2021-07-23 14:18:03 字數 353 閱讀 1471

關於多執行緒與多程序的介紹和區別,可以參見陽光日誌《程式設計思想之多執行緒與多程序(1)——以作業系統的角度述說執行緒與程序》),這篇博文講的非常不錯,通俗易懂。

現在我要在此好好總結下這兩者的區別與使用場景。

多執行緒的優點:

1)最基礎的:建立程序的空間和時間開銷要大於執行緒,程序之間有著不同的位址空間,而同一程序裡的多執行緒則使用同一位址空間,共享該程序裡的堆、資料段;

2)方便高效的通訊方式:執行緒間共享記憶體,通訊方便,而程序通訊需使用ipc;

3)較輕的切換開銷 :不用切換位址空間,不用更改cr3暫存器,不用重新整理tlb。

應用場景:

當不同任務間需要大量共享資料或頻繁通訊時,推薦使用多執行緒。

多程序與多執行緒的區別

據說這個問題很重要,要從多個方面總結。多執行緒和多程序的區別 小結 多執行緒還是多程序的選擇及區別 關於程序和執行緒對於全域性變數共享的問題學習總結 程序是資源分配的最小單位,執行緒是cpu排程的最小單位。同一程序的不同執行緒會共享程序記憶體空間中的全域性區和堆。執行緒私有的是棧和暫存器。因此。區域...

多程序與多執行緒的區別

多程序與多執行緒的區別?解 1 從資料共享 同步方面來講,多程序資料共享複雜,需要用ipc,資料是分開的,同步簡單 多執行緒資料共享簡單,但也是因為這個原因導致同步複雜。2 從內 存 cpu 方面來講,多程序占用記憶體多,切換複雜,cpu利用率低 多執行緒占用記憶體少,切換簡單,cpu利用率高。3 ...

多執行緒與多程序的區別

維度 多程序多執行緒 總結資料共享 同步 資料是分開的,共享複雜,需要用ipc 同步簡單 多執行緒共享程序資料,共享簡單 同步複雜 各有優勢 記憶體 cpu 占用記憶體多,切換複雜,cpu利用率低 占用記憶體少,切換簡單,cpu利用率高 執行緒佔優 建立銷毀 切換 建立銷毀 切換複雜,速度慢 建立銷...