11執行緒 多執行緒模型

2021-09-24 09:37:38 字數 1179 閱讀 8994

一、什麼是執行緒、為什麼要引入執行緒

二、引入執行緒機制後的變化

三、執行緒有的屬性

四、執行緒的實現方式

五、多執行緒模型

1、執行緒引入原因分析:

2、執行緒:

可以把執行緒理解為輕量級程序。執行緒是基本的cpu執行單元,也是程式執行流的最小單元。引入執行緒後不僅程序可以併發,程序內的執行緒也可以併發,進一步提公升了系統的併發度。

引入執行緒之後,程序只作為除cpu之外系統資源的分配單元(印表機等系統資源),執行緒作為處理機的分配單元1、資源分配、排程

2、併發性

2、系統開銷

執行緒是處理機排程的基本的單位

多cpu計算機中,各個執行緒可以占用不同的cpu

每個執行緒都有乙個執行緒id和執行緒控制塊tcb

執行緒也有就緒、阻塞、執行三種基本狀態

執行緒幾乎不擁有系統資源

同一程序的不同執行緒間共享程序的資源

由於共享記憶體位址空間,同一程序的執行緒間通訊甚至不用系統干預

同一程序的執行緒切換不會引起程序切換

不同程序的執行緒切換會引起程序切換

切換同程序內的執行緒系統開銷很小

切換程序系統開銷 很大

1、使用者級執行緒應用程式通過執行緒庫實現

2、核心級執行緒

3、組合方式:

1、問題引入:在同時支援使用者級執行緒和核心級執行緒的系統中,由幾個使用者級執行緒對映到核心級執行緒的問題引入多執行緒模型

2、多對一模型:

3、一對一模型:

4、多對多模型:

5、知識點總結:

多執行緒11 停止執行緒

1 new thread t new thread 執行緒物件一旦建立就進入到新生狀態 2 當呼叫start 方法,執行緒立即進入就緒狀態,但不意味著立即排程執行 3 排程,進入執行狀態,執行緒才真正執行執行緒體的 塊 4 dead,執行緒中斷或者結束,一旦進入死亡狀態,就不能再次啟動 5 阻塞狀態...

多執行緒 學習11

以下內容來自 上面的文章講解了在windows系統下實現多執行緒同步互斥的方法,為了提高在實際問題中分析和思考多個執行緒之間同步互斥問題的能力,接下來將講解pv操作,這也是作業系統中的重點和難點。本文將會先簡要介紹下pv操作的 和基本使用方法,然後再通過兩道經典的計算機考研真題 放水果和安全島來示範...

執行緒概念和多執行緒模型

程序是伴隨著多道程式技術而引入的 和程序一樣,執行緒有它的tcb和id,也有就緒,阻塞,執行三種狀態 執行緒幾乎不擁有系統資源,系統資源是分配給程序的,同一程序內的執行緒共享程序的資源 同一程序內的執行緒間切換,不用切換程序環境。執行緒分為 使用者級執行緒 和 核心級執行緒 即守護執行緒 使用者級執...