程式設計思想之多執行緒與多程序 C 中的多執行緒

2021-07-06 09:50:10 字數 1204 閱讀 6625

《程式設計思想之多執行緒與多程序(1)——以作業系統的角度述說執行緒與程序》一文詳細講述了執行緒、程序的關係及在作業系統中的表現,《程式設計思想之多執行緒與多程序(2)——執行緒優先順序與執行緒安全》一文講了執行緒安全(各種同步鎖)和優先順序,這是多執行緒學習必須了解的基礎。本文將接著講一下c++中多執行緒程式的開發.這裡主要講windows平台執行緒的用法,建立執行緒要呼叫windows api的createthread方法。

建立執行緒

在windows平台,windows api提供了對多執行緒的支援。前面程序和執行緒的概念中我們提到,乙個程式至少有乙個執行緒,這個執行緒稱為主線程(main thread),如果我們不顯示地建立執行緒,那我們產的程式就是只有主線程的間執行緒程式。 

測試程式:

//售票系統

void test2()

system("pause");

}結果:

視窗0開始** 北京–>贛州 的票… 

視窗0**第100的票,出票成功!剩餘99張票. 

視窗1開始** 北京–>贛州 的票… 

視窗1**第99的票,出票成功!剩餘98張票. 

視窗0**第98的票,出票成功!剩餘97張票. 

視窗2開始** 北京–>贛州 的票… 

視窗2**第97的票,出票成功!剩餘96張票. 

視窗1**第96的票,出票成功!剩餘95張票. 

視窗0**第95的票,出票成功!剩餘94張票. 

視窗3開始** 北京–>贛州 的票… 

視窗3**第94的票,出票成功!剩餘93張票. 

視窗2**第93的票,出票成功!剩餘92張票. 

視窗1**第92的票,出票成功!剩餘91張票. 

視窗0**第91的票,出票成功!剩餘90張票. 

視窗4開始** 北京–>贛州 的票… 

視窗4**第90的票,出票成功!剩餘89張票. 

視窗3**第89的票,出票成功!剩餘88張票. 

視窗2**第88的票,出票成功!剩餘87張票. 

視窗1**第87的票,出票成功!剩餘86張票. 

視窗0**第86的票,出票成功!剩餘85張票. 

視窗5開始** 北京–>贛州 的票… 

視窗5**第85的票,出票成功!剩餘84張票. 

視窗4**第84的票,出票成功!剩餘83張票. 

視窗3**第83的票,出票成功!剩餘82張票. 

視窗2**第82的票,出票成功!剩餘81張票.

Python之多程序和多執行緒

目標 1.os.fork簡單示例 3.使用os.fork多程序解決tcpserver多客戶端連線問題 1.os.fork簡單示例 如下 usr bin env python coding utf 8 import ospid os.fork print pidprint if pid print p...

Linux之多程序拷貝與多執行緒拷貝

讓我們開始編寫 吧 include include include include include include include include intcutting char src,int n int len lseek fd,0,seek end 獲取檔案位元組數 if len n 0 el...

(三)多執行緒之多執行緒與多程序的區別

一 誰的開啟速度快?1,在主程序下開啟子程序 import time from multiprocessing import process defsay hi name print s say hi name time.sleep 2 print s say hello name if name ...