一个基于对话框的VC6程序.在主程序中新开一个线程. 在该线程运行其间. 我已经关掉了这个对话框程序.  请问是否这个新开的线程是否也被自动关掉了? 我没有在任何地方手动关掉这个线程. 

解决方案 »

  1.   

    是的,当进程的主线程退出时,该进程的所有子线程就会都退出.
    这有可能产生内存泄漏或其他的不可知问题,最好还是如楼上所言,发出指令让线程退出.
    大概如下:
    1.在线程中等待一个退出事件,使用waitformultipleobject(),
    2..在主线程中设一个事件,当进程要退出时,将此事件设有有效.
    3.在子线程中根据上面的waitformultipleobject的返回值来决定是否退出.
    4.主线程在子线程退出后,再退出.
    具体的情况你就自己看着办啦,
      

  2.   

    出主线程前会TerminateThread 强制结束子线程, 如果资源没释放的话就会....