1. 程式人生 > >線程和進程的基本問題

線程和進程的基本問題

申請 不響應 進程 共享數據 資源 創建 需要 比較 包含

線程和進程的比較

1.進程是資源分配的基本單位。

2.線程是獨立調度的基本單位。

3.在同一個進程中,線程的切換不會引起進程的切換。在不同的進程中進行線程切換,如從一個進程中的線程切換到另一個進程中的線程會引起進程的切換。

4.一個進程至少包含一個線程,線程共享整個進程的資源

5.進程結束後它所擁有的所有線程都將被銷毀,但是線程結束並不響應其他線程

6.線程運行時一般都需要同步和互斥,因為他們共享進程的所有資源

7.線程有自己的私有TCB,線程id,進程也有自己的PCB,進程id

8.在開銷方面:每個進程都有獨立的數據空間,進程之間的切換會有較大的開銷,線程是共享數據空間的,線程之間的切換開銷會小很多。創建一個進程需要給他申請內存空間,創建線程則不需要,相比之下創建進程比創建線程的開銷大很多。

線程可分為用戶級線程和內核級線程

線程和進程的基本問題