使用多线程,debug没问题,release出错,高手请进
我使用多线程,在DEBUG模式下没有任何问题,但是release下就会出错,我将Use run-time library由multithreaded修改为Debug multithreaded后又没有问题了,我调试release下的程序,提示
Unhandled exception in CDDA.exe(NTDLL.DLL):0xc0000005:access violation.
然后指向的反汇编代码是:
7C924287 mov word ptr [eax+2],bx
具体表现为有时候可以正常创建,但第二次创建就会出错,我创建线程的代码是:
if(_beginthreadex(NULL,0,doEncodeThread,GetDC(hDlg),NULL,&uThreadID) == 0)
return false;
线程退出代码为:
UINT WINAPI doEncodeThread(LPVOID lpParam)
{
{
_endthreadex(0);
}
return 1;
}
也使用了CloseHandle(hThread);
请高手帮助.