教程詳情
- 教程名字:VC驿站VIP_vc++高級班之多線程篇教程
- 教程大小:349.52 MB
- 作者:VC驿站
大家好,我是Syc
今天給大家做的教程是:
vc++高級班之多線程篇[1]---認識與創建線程
----------------------------------------------------------------------------------------
①、什麽是多線程編程:
一邊聽音樂,一邊上網;一邊下載東西,一遍看電影,等等,都是多線程的功勞;
===================================================
②、線程與進程的關系:
線程是進程的可執行單元,是計算機分配CPU機時的基本單元。一個進程可以包含一個或多個線程,進程是通過線程去執行代碼的。
同一個進程的多個線程共享該進程的資源和操作系統分配給該進程的内存空間。每個進程必須有一個主線程,主線程退出之後該進程也就退出了。
一個進程的主線程是由系統創建的。
在單CPU中,表面上看好像是多個進程中的多個線程共同執行,實際上是操作系統根據調度規則、依次的 将一個一個的線程可執行代碼加載進CPU中執行的;
即,CPU在同一時刻隻能執行一段代碼,由于CPU的頻率非常快,迅速的在各個線程間進行切換,所以給人的感覺就好像是多個線程共同執行。
不過在多核CPU的電腦中,确實是多個線程共同執行……
所以,通過多線程,一個進程的應用程序可以充分利用CPU資源,但什麽事情都是物極必反,如果線程開的太多,系統就會增加額外的開銷去進行線程的調度,
反而降低了CPU的使用效率。
③、使用 Spy++ 工具查看系統中當前的進程與線程!
===================================================
④、創建新線程的三種方式:
方式一:CreateThread(記得關閉線程句柄)
方式二:AfxBeginThread(會自動釋放的,不用你去釋放)
方式三:_beginthreadex(記得關閉線程句柄)
===================================================
⑤、幾種方式創建線程的區别!
===================================================
※※※ 小作業:練習使用 _beginthreadex 函數,進行線程的創建!
------------------------------------- End -------------------------------------------
教程截圖
教程下載
原文鏈接:【教程寶盒網】 https://www.jc-box.com/185.html,轉載請注明出處。
請先
!