在线程外面终止线程的问题
UINT COPration ::Mythread(LPVOID pParam)//COPration 是纯虚基类
{
COPration *P = (COPration *)pParam;
while(true)
{
if(p->m_Com.GetBufferCount>0)
return 0;
}
}
bool COldmeter::Read()//COldmeter是从COPration派生来的
{
.
.
CWinThread *pThread = AfxBeginThread(Mythread,this);
.
.
if(pThread->m_hThread != NULL)
{
DWORD ExitCode;
GetExitCodeThread(pThread->m_hThread,&ExitCode);
ExitThread(ExitCode);
}
.
.
}
上述部分是在动态库里面实现。主应用程序通过接口类调用动态库里面的函数。
问题是,但我在调用ExitThread(ExitCode);结束线程的时候,我的主应用程序界面竟然消失了,结果在任务管理器里面发现主应用程序却还在执行。
这是怎么回事啊,我只是想结束本线程而已,不知道我的处理有问题没有。大家有什么解决办法没有????