15,471
社区成员
发帖
与我相关
我的任务
分享
HANDLE hEvent[2];
hEvent[0] = ::CreateEvent(NULL,FALSE,FALSE,NULL);//用于退出
hEvent[1] = ::CreateEvent(NULL,FALSE,FALSE,NULL);//用于处理业务
while(TRUE)
{
DWORD dwWait = ::WaitForMultipleObjects(2,hEvent,FALSE,10000);//超时10s
switch(dwWait)
{
case WAIT_TIMEOUT:
break;
case WAIT_OBJECT_0:
//退出
break;
case WAIT_OBJECT_1:
break;
}
}
XXXX::Stop()
{
::SetEvent(hEvent[0]);//通知线程退出,这样线程就立刻退出了。
}