程序執行緒的區別和聯絡

2022-01-29 09:53:51 字數 371 閱讀 8363

1 兩者都是多工程式設計方式,都能夠使用計算機的多核資源

2 程序的建立刪除消耗的計算機資源比執行緒要多

3 程序空間獨立,資料相互不干擾,有專門的ipc(程序間通訊),執行緒使用全域性變數進行通訊

4 乙個程序可以建立多個執行緒分支,兩者之間存在包含關係

5 多個執行緒公用程序的資源,在資源操作時往往需要同步互斥

6 程序執行緒在系統中都有自己特有的屬性,id,**段,棧區等資源

使用場景

* 需要建立較多併發,同時任務關聯性比較強時,一般用多執行緒

* 不同的任務模組可能更多使用程序

* 使用程序執行緒需要考慮資料的處理複雜度,比如程序間通訊是否方便,同步互斥是否過於複雜

程序和執行緒的區別與聯絡

1.共同點 功能上都是用於實現多工併發程式設計的技術手段,執行緒的狀態包括就緒 執行與阻塞,與程序類似。從系統實現的角度看,程序實體和執行緒實體在linux核心中都是有task struct實現的,兩者的建立最終都是呼叫系統函式clone 2.區別 程序是資源分配的基本單位,執行緒是系統排程的基本單...

程序與執行緒的區別和聯絡

一 程式與程序 程式 一段靜態的 程序 程式的一次動態執行過程 二 程序與執行緒 程序 程序是程序實體 程式段 資料段 pcb 的執行過程,是系統進行資源分配和排程的乙個獨立單位 執行緒 又稱輕量級程序 lightweight process 是程序中某個單一順序的控制流 三 程序與執行緒的區別 2...

程序和執行緒的概念 區別和聯絡

程序 process 和執行緒 thread 是作業系統的基本概念,但是它們比較抽象,不容易掌握。最近,我讀到一篇材料,發現有乙個很好的模擬,可以把它們解釋地清晰易懂。程序與執行緒的乙個簡單解釋 在這個簡單易懂的模擬下,了解一下程序和執行緒的巨集觀概念 程序,是併發執行的程式在執行過程中分配和管理資...