#pragma once #include <windows.h> class THREAD { public: HANDLE hThread; THREAD(); ~THREAD(); //常用函数 BOOL Create(LPVOID Address,LPVOID lpParameter); void Terminate(); void Suspend(); void Resume(); void WaitForEnd(); }; THREAD::THREAD() { this->hThread=NULL; } THREAD::~THREAD() { ::CloseHandle(this->hThread); } //创建线程(函数地址,参数) BOOL THREAD::Create(LPVOID Address,LPVOID lpParameter=NULL) { this->hThread=::CreateThread(NULL,0,(LPTHREAD_START_ROUTINE)Address,lpParameter,0,NULL); if (this->hThread) return TRUE; else return FALSE; } //结束线程() void THREAD::Terminate() { ::TerminateThread(this->hThread,0); } //挂起线程() void THREAD::Suspend() { ::SuspendThread(this->hThread); } //恢复线程() void THREAD::Resume() { ::ResumeThread(this->hThread); } //等待线程执行完毕() void THREAD::WaitForEnd() { ::WaitForSingleObject(this->hThread,INFINITE); }
转载于:https://www.cnblogs.com/littleevil/archive/2012/05/31/2527978.html