afxbeginthread 怎么安全结束

解决方案 »

  1.   

    afxbeginthread 这个只有它自己运行完后自动结束才是 最安全的,建议用createthread。这样可以方便你控制
      

  2.   

    顶1,2楼的.void AfxEndThread( UINT nExitCode ); 这个是相对安全一些.
    但外部中止线程始终是不安全的.经典的教材要我们不要调用 CreateThread ,要用 _beginthreadex(),也尽量不要在线程外部中止线程.楼主可以看看WINDOWS核心编程的第六章,下个电子书就行,里面有详细的说明.
      

  3.   

    C++代码建议用_beginthreadex(),该函数在内部会调用Windows的API CreateThread来创建线程,MFC的话可以使用AfxBeginThread()来创建线程。不建议使用CreateThread。
    让线程自己返回时最安全的
      

  4.   

    线程内部退出是安全的可以考虑整一个变量bExit,线程执行的时候检测这个变量
      

  5.   

    WaitForSigleObject()
    CloseHandle()
      

  6.   


    最安全的就是让线程自己自动跑完退出,即及加一个条件,如果这个条件为真,则退出
    WaitForSigleObject()
    CloseHandle()
      

  7.   

    既然使用了AfxBeginThread(),当然就要用AfxEndThread()来配对了……不过我个人认为,还是在函数中使用return语句比较好……天生的,才是强生的……