Hi guys, I can't stop my thread:
What am I doing wrong ? Thanks.Code:void MyClass:start()
DWORD dwThread;
thread_flag=1;
hThread=CreateThread(NULL,0,startThread,(LPVOID)this,0,&dwThread);
}
DWORD WINAPI MyClass::startThread(LPVOID params)
{
MyClass* p=(MyClass*)params;
return p->myThread();
}
DWORD MyClass::myThread()
{
while(thread_flag != 0){
// do stuff
}
return 0;
};
void MyClass::stop(){
// I try to stop it like this but it just hangs
thread_flag=0;
WaitForSingleObject(hThread,INFINITE);
CloseHandle(hThread);
}