是对话框程序,运行过程中没有出错,
程序结束时关闭了文件和数据库连接。
if (!Close())
{
AfxMessageBox(_T("关闭数据库出错!"));
return false;
}
if (fclose(stream)==EOF)
{
AfxMessageBox(_T("关闭文件出错!"));
return false;
}
单击ok关闭对话框以后在资源管理器里面依然能看到这个程序的线程,
而且占用了将近90%的系统资源。

解决方案 »

  1.   

    程序退出是
    TerminateThread(..);
      

  2.   

    我以前遇到过这个问题。我是在线程退出时加了AfxMessageBox(),
    结果线程不退出。把AfxMessageBox去掉就可以了。
    我猜想可能是退出是窗口已经释放了,在调用AfxMessageBox()就不能显示AfxMessageBox的窗口,程序就4在那里
      

  3.   

    要看你是如何创建的线程,如果创建了句柄,那么退出时要手动删除,否则要内存泄漏.如果是指针的话,就不用了.
    跟wangbab(bab) 想法一致,因为线程不因为你的AfxMessageBox函数而停止.