我有个线程函数,
我用afxbeginthread启动后,
我想做以下工作1.查看线程状态
2.线程异常时,我关闭他然后重起线程
3.正常时,什么都不做,让他继续运行4.我想做一个按纽控制停止他,一个按纽运行他。请高手给出详细点的代码,最好能有说明,编译也能通过

解决方案 »

  1.   

    1.2.3
    GetExitCodeThread/WaitForSingleObject4.ExitThread
      

  2.   

    DWORD dwExitCode=0;
    //Ensure the m_pThread->m_bAutoDelete=FALSE;
    if(GetExitCodeThread(m_pThread->m_hThread,&dwExitCode))
    {
    if(STILL_ACTIVE !=dwExitCode)
    {
    //线程已经退出
    //m_pThread=AfxBeginThread(...);
    }
    }
    else
    {
    //ShowLastError();//My custom function
    }
    //Exit the thread
    m_pThread->ExitThread(nExitCode/*==0*/);
      

  3.   

    m_pThread->ExitThread(nExitCode/*==0*/);还有,上面那句话nExitCode/*==0*/这个参数是指定什么的
      

  4.   

    牙医都说完了呀
    还要怎么说?
    不过牙医确实够强的,好像无时无刻不在csdn啊
      

  5.   

    if(STILL_ACTIVE !=dwExitCode)
    {
    //线程已经退出
    //m_pThread=AfxBeginThread(...);
    }我测试了以下,发现if的条件始终是成立的,所以不挺的启动AfxBeginThread