進程與線程

2019-05-08 22:00:55多線程

1、定義併發

進程:是操做系統資源分配的基本單位。spa

線程:是進程的一個執行單元,線程也被稱爲輕量級進程。操作系統

一個程序至少一個進程,一個進程至少一個線程。線程

 

2、區別進程

  • 地址空間:同一進程的線程共享本進程的地址空間,而進程之間則是獨立的地址空間。
  • 一個進程崩潰後,在保護模式下不會對其餘進程產生影響,可是一個線程崩潰整個進程都死掉。因此多進程要比多線程健壯。
  • 進程切換時,消耗的資源大,效率高。因此涉及到頻繁的切換時,使用線程要好於進程。一樣若是要求同時進行而且又要共享某些變量的併發操做,只能用線程不能用進程
  • 執行過程:每一個獨立的進程程有一個程序運行的入口、順序執行序列和程序入口。可是線程不能獨立執行,必須依存在應用程序中,由應用程序提供多個線程執行控制。

 

3、通訊方式內存

進程:共享內存,管道資源

線程:全局變量,自定義的消息機制多進程

相關文章
相關標籤/搜索
本站公眾號
   歡迎關注本站公眾號,獲取更多信息