Linux系統中多程式和多執行緒的優缺點及聯絡!

老男孩IT教育機構發表於2022-03-14

  在學習或者從事Linux相關工作的時候,大家一定聽說過程式和執行緒。所謂程式就是正在執行的程式,而執行緒便是程式中的執行路徑,那麼Linux知識中多程式和多執行緒的區別是什麼?以下是詳細的內容介紹。

  程式:執行中的程式,-->執行過程稱之為程式。

  執行緒:執行緒是輕量級的程式,是程式中的一條執行序列,一個程式至少有一條執行緒。

  多執行緒優點:①無需跨程式邊界;②程式邏輯和控制方式簡單;③所有執行緒可以直接共享記憶體和變數;④執行緒方式消耗的總資源比程式少。

  多程式優點:①每個程式相互獨立,不影響主程式的穩定性,子程式崩潰沒關係;②透過增加CPU就可以容易擴充效能;③可以儘量減少執行緒加鎖/解鎖的影響,極大提高效能。

  多執行緒缺點:①每條執行緒與主程式共用地址空間,大小受限;②執行緒之間的同步和加鎖比較麻煩;③一個執行緒的崩潰可能影響到整個程式的穩定性;④到達一定的執行緒數之後,即使在增加CPU也無法提高效能。

  多程式缺點:①邏輯控制複雜,需要和主程式互動;②需要跨程式邊界,如果有大資料傳輸,不適合;③多程式排程開銷比較大。

  Linux系統中多程式和多執行緒的區別是什麼?

  1、多程式中資料共享複雜、同步簡單;而多執行緒中資料共享簡單、同步複雜。

  2、多程式佔用記憶體多、切換複雜、速度慢、CPU利用率低;而多執行緒佔用記憶體少、切換簡單、CPU利用率高。

  3、多程式的程式設計簡單、除錯簡單;而多執行緒的程式設計複雜、除錯複雜。


來自 “ ITPUB部落格 ” ,連結:http://blog.itpub.net/69952527/viewspace-2870974/,如需轉載,請註明出處,否則將追究法律責任。

相關文章