執行緒和程式的區別
1.根本區別(作業系統資源管理方式不同):
程式是os資源分配的基本單位,執行緒是任務排程和執行的基本單位;
2.開銷方面:
每個程式都有獨立的程式碼和資料空間(即程式上下文),程式之間的切換會有較大的開銷;
執行緒可以看作輕量級程式,同一類執行緒之間共享程式碼和資料空間,每個執行緒都有自己獨立的執行棧和計數器,執行緒之間切換的開銷小;
3.所處環境:
os中能同時執行多個程式;
一個程式中有多個執行緒(通過CPU排程,每個時間片只有一個執行緒執行)
4.記憶體分配:
每個程式有自己獨立的記憶體空間;
執行緒之間共享其所屬程式的記憶體資源,除了CPU外
5.包含關係:
執行緒是程式的一部分;一個程式至少包含一個執行緒,或是多個執行緒;
6.執行方式:
程式獨立執行;
執行緒無法獨立執行,必須依賴於應用程式,由應用程式提供多個執行緒指控;
7.併發性:
同一個程式中的多個執行緒之間可以併發執行;
相關文章
- 程式和執行緒的區別執行緒
- 程式和執行緒的區別(Linux)執行緒Linux
- 「Learning」區別執行緒和程式執行緒
- 程式和執行緒的區別與聯絡執行緒
- java架構-執行緒和程式的區別Java架構執行緒
- Linux中執行緒和程式的區別Linux執行緒
- 程式與執行緒的區別執行緒
- 【面試】執行緒程式區別面試執行緒
- 程式與執行緒區別執行緒
- php中的執行緒、程式和併發區別PHP執行緒
- 作業系統-執行緒和程式的區別作業系統執行緒
- 作業系統_程式和執行緒的區別作業系統執行緒
- 多執行緒和多程式的區別(小結)執行緒
- Java程式和執行緒關係及區別Java執行緒
- 如何查詢一個程式下面的執行緒數(程式和執行緒區別)執行緒
- 程式、執行緒和協程之間的區別和聯絡執行緒
- 程式、執行緒、纖程之間的區別?執行緒
- Linux執行緒與程式的區別Linux執行緒
- Linux程式與執行緒的區別Linux執行緒
- Java 執行緒和作業系統的執行緒有啥區別?Java執行緒作業系統
- Linux中程式與程式、執行緒的區別!Linux執行緒
- Java多執行緒--併發和並行的區別Java執行緒並行
- 程式和執行緒有什麼區別?(Process and Threads)程式之間和執行緒之間是如何通訊的?執行緒thread
- 對程式、執行緒和協程的理解以及它們的區別執行緒
- 多執行緒-程式和執行緒的概述執行緒
- Java執行緒面試題(04) Java中程式與執行緒的真實區別Java執行緒面試題
- 轉載_Linux程式與執行緒的區別Linux執行緒
- java執行緒系列---Runnable和Thread的區別Java執行緒thread
- 執行緒狀態&&Wait和sleep的區別?執行緒AI
- PHP的執行緒安全與非執行緒安全版本的區別PHP執行緒
- 程序、執行緒和協程之間的區別和聯絡執行緒
- 程序、執行緒、協程的區別執行緒
- Linux中程式與執行緒的概念以及區別Linux執行緒
- Introduction to processes and threads(執行緒與程式的區別)thread執行緒
- JDK內建執行緒池的共同點和區別JDK執行緒
- Linux中程式和執行緒的區別與聯絡,建議收藏!Linux執行緒
- 執行緒 並行 與 併發 的區別執行緒並行
- 程式和執行緒執行緒