线程编程不太熟悉,正在学习中,请教达人们如下处理是否正确?UINT funitethread(LPVOID v)
{
         …………
dlg->p_workthread=NULL;
AfxEndThread(0);
return 0;
}{      //某函数中建立了一个工作者线程,其中CWinThread* p_workthread是这个类的public变量
p_workthread=AfxBeginThread(*funitethread,0);
}简言之,就是在线程内部在线程结束AfxEndThread(0);之前,先清空了线程指针这样做规不规范,有没有害处?或者有什么更好的解决方案?
因为假设程序有很多任务可以执行,我必须去控制在执行某一任务(有线程工作时)时其他任务不能开始,所以需要p_workthread这个变量的空与非空来识别当前是否有任务在执行。