(1)步驟1,編寫畫圓和畫方的兩個函式
//畫圓的函式
dword drawcircle(lpvoid lpparam)
;//實現畫方的函式
dword drawrect(lpvoid lpparam);(
2)步驟2:在程式中呼叫上述2個函式
void drawcircleandrect(
)先畫圓,後畫方。
順序執行drawcircle(
) 和drawrect(
)。
(1)creatthread(
)功能:把乙個函式建立為乙個執行緒
handle createthread(
lpsecurity_attributes lpthreadattributes,
dword dwstacksize,
lpthread_routine threadfunction,
//執行緒函式
lpvoid lpparameter//執行緒函式的引數
)(2)執行緒函式的原型
dword threadfunction(lpvoid lpparameter)
//引數
(3)用執行緒實現併發畫圓和畫方
void drawcircleandrect(
)建立執行緒的關鍵:把drawcircle(
)和drawrect(
)作為引數傳遞給creatthread(
)
(1)win32庫建立執行緒,建立到當前程序空間
createthread(執行緒函式,引數)
(2)mfc建立執行緒:由(1)封裝
afxbeginthread(執行緒函式,引數)
(3)建立遠端執行緒:建立到其它程序空間
creatremotethread(程序,執行緒函式,引數)
(4)linux建立執行緒:
pthread_create(執行緒函式,引數)
由posix定義的linux執行緒庫(pthreads)
特點:#include
pthread_function(
)int pthread_create(pthread_t *thread,
pthread_attr_t *attr,
void *
(*threadfunction)
(void *),
void *arg)
;引數:
thread:返回的執行緒控制代碼
attr:指定執行緒的屬性;
arg:執行緒函式的引數
程序管理 執行緒概念
一 執行緒概念 thread 執行緒是可由cpu直接執行的實體 乙個程序內部可建立多個執行緒 多個執行緒共享cpu可以實現併發執行 執行緒的併發程度要比程序更細 windows的createthread 功能 把乙個函式建立為乙個程序 handle createthread lpsecurity a...
linux之程序執行緒
1.pid唯一描述乙個程序 getpid 函式返回程序id號,getppid返回其父程序的id號 返回型別為pid t型 通過typedef定義為unsigned int 2.fork 函式 以父程序為藍本複製乙個程序,執行一次返回兩次。標頭檔案 include,include 返回 1建立失敗 返...
程序與執行緒的管理
1 程序和執行緒的基本概念 在計算機系統中,乙個正在執行的應用程式就叫做乙個程序,乙個程序可以有多個執行緒,程序的任務是有這個程序的所有執行緒共同配合來完成的。乙個程序至少有乙個執行緒,叫做主線程。2 工作執行緒的建立 如何建立乙個工作執行緒是乙個比較容易的,只要清楚開啟執行緒函式的原型就很簡單了。...