1.SuspendThread
SuspendThread是掛起指定的線程,不同於Sleep只能掛起其所在的線程並在時間間隔超過後自動回覆,而SuspendThread掛起的線程則需要使用ResumeThread回覆。
SuspendThread函數原型如下:
SuspendThread函數原型如下:
DWORD WINAPI SuspendThread(
HANDLE hThread);
參數:
hThead:輸入參數,需要掛起的文件句柄。
返回值:
如果返回-1(0xFFFFFFFF),表示失敗;如果返回整數,表示線程已經被掛起過得次數。
2.ResumeThread
ResumeThread可以恢復被SuspendThread掛起的線程的執行。
ResumeThread函數原型:
DWORD WINAPI ResumeThread(
HANDLE hThread);
如果函數成功,返回值是線程的上一個掛起計數。
如果函數失敗,返回值爲(dword)-1。要獲取擴展錯誤信息,請調用GetLastError。
在線程創建並運行後,用戶可以對線程執行掛起和恢復操作,
掛起就是指暫停線程的執行,當然有暫停就有恢復,之後,用戶可以通過指定的操作來恢復線程的正常執行!
※※※ 注意:線程的掛起與恢復是有次數的,即:可以多次掛起,但是之後想進行線程的正常執行必須進行多次恢復操作!
掛起幾次就要恢復幾次