(1)一個程序至少有一個進程,一個進程至少有一個線程
(2)線程的劃分尺度小于進程,使得多線程程序的并發性高。
(3)進程在執行過程中擁有獨立的內存單元,而多個線程共享內存,極大地提高了程序的運行效率。
(4)線程在執行過程中與進程有區別。每個獨立的線程都有程序運行的入口、順序執行序列和程序的出口。但是線程不能夠獨立執行,必須依存在應用程序中,由應用程序提供多個線程執行控制。
(5)從邏輯角度來看,多線程的意義在于一個應用程序中,有多個執行部分可以同時執行。但操作系統并沒有將多個線程看作多個獨立的應用來實現進程的調度、管理和資源分配。這是進程和線程的主要區別。