Posted on 2012-10-19 10:51
盛勝 閱讀(154)
評論(0) 編輯 收藏 引用
CreateThread()函數(shù)在調用進程的地址空間上創(chuàng)建一個線程,以執(zhí)行指定的函數(shù);返回值為所創(chuàng)建線程的句柄。
ExitThread()函數(shù)用于結束本線程。
SuspendThread()函數(shù)用于掛起指定的線程。
ResumeThread()函數(shù)遞減指定線程的掛起計數(shù),掛起計數(shù)為0時,線程恢復執(zhí)行。
SuspendThread是掛起指定的線程,不同于Sleep只能掛起其所在的線程并在時間間隔超過后自動回復,而SuspendThread掛起的線程則需要使用ResumeThread回復。
SuspendThread函數(shù)原型如下:
DWORD WINAPI SuspendThread(
HANDLE hThread);
參數(shù):
hThead:輸入?yún)?shù),需要掛起的文件句柄。
返回值:
如果返回-1(0xFFFFFFFF),表示失敗;如果返回整數(shù),表示線程已經(jīng)被掛起過得次數(shù)。
ResumeThread可以恢復被SuspendThread掛起的線程的執(zhí)行。
ResumeThread函數(shù)原型:
DWORD WINAPI ResumeThread(
HANDLE hThread);
CWinThread
例如:
*p1=AfxBeginThread(thread1event,this,THREAD_PRIORITY_NORMAL,0,CREATE_SUSPENDED);//創(chuàng)建并掛起
p1->ResumeThread();//執(zhí)行線程thread1event
p1->SuspendThread();//掛起線程thread1event