多執行緒程式設計筆記

2021-06-05 15:03:24 字數 493 閱讀 1966

notes of mutithread

windows作業系統多工性質

1.windows3.x的協同多工

應用程式具有對cpu的控制權,也就意味著某個程式要獲得控制權需等到上乙個程式釋放控制權,顯然這不夠靈活。

2.windows 95/nt的搶先式多工

應用程式對cpu的占用時間由系統決定(系統分配控制權)

3.程序與執行緒

由於系統為每個執行緒劃分的時間片很小(20ms左右),所以看上去像多個執行緒同時執行

主線程用於處理與使用者的互動,其他執行緒處理各項工作

4.同步

程式應該盡可能避免多個執行緒同時訪問乙個快取區或系統資源

等待函式:

waitforsingleobject                      waitformutipleobjects

同步物件:

事件                    互斥量                  訊號燈

c 多執行緒程式設計筆記2

同步的意思是在多執行緒程式中,為了使兩個或多個執行緒之間,對分配臨界資源的分配問題,要如何分配才能使臨界資源在為某一線程使用的時候,其它執行緒不能再使用,這樣可以有效地避免死鎖與髒資料。髒資料是指兩個執行緒同時使用某一資料,造成這個資料出現不可預知的狀態!在 c 中,對執行緒同步的處理有如下幾種方法...

多執行緒程式設計學習筆記(一)

多執行緒程式設計筆記 一 操作執行緒 1 操作例項 using system using system.threading 執行threadmethod的執行緒的 為 2 主線程結束 在threadmethod中,啟動子執行緒後,主線程休眠0.5等待子執行緒執行,子執行緒執行threadmethod...

多執行緒程式設計學習筆記(六)

多執行緒程式設計學習筆記 六 執行緒區域性儲存 tls 存放區域性儲存步驟 1 申請資料槽 localdatastoreslot slot thread.getnameddataslot para 如果不存在名為para的資料槽,將分配乙個所有執行緒均可用的para資料槽 2 往資料槽存放資料 my...