程序中使用了一个辅助线程,被搞晕了。
m_pSubThread = AfxBeginThread(CaptureData,this);
DWORD lpExitCode;
GetExitCodeThread(m_pSubThread->m_hThread,&lpExitCode);
if ( lpExitCode == STILL_ACTIVE)
{ ... }
发现这样用的时候辅助线程如果没异常的话程序也能正常运行,但是如果我自己的线程函数CaptureData如果遇到问题返回了,没办法得到返回值,这个lpExitCode总是259,怎么回事?
我在CaptureData中定义了一些返回code,对应不同的错误,可是没办法得到,有人知道怎么做吗?
m_pSubThread = AfxBeginThread(CaptureData,this);
DWORD lpExitCode;
GetExitCodeThread(m_pSubThread->m_hThread,&lpExitCode);
if ( lpExitCode == STILL_ACTIVE)
{ ... }
发现这样用的时候辅助线程如果没异常的话程序也能正常运行,但是如果我自己的线程函数CaptureData如果遇到问题返回了,没办法得到返回值,这个lpExitCode总是259,怎么回事?
我在CaptureData中定义了一些返回code,对应不同的错误,可是没办法得到,有人知道怎么做吗?
The return value from the thread function.
The exit value of the thread's process.
m_pSubThread自动析构问题。