用terminateThread结束线程后主程序无法继续!急!

用terminateThread结束线程后主程序无法继续!急!

问题描述:

为何用terminateThread结束线程后,下面的语句无法执行了。
而且若是监视terminateThread里的参数(把0换成变量),好像一直是0,不是应该结束成功返回非0吗图片图片

图看不清,测试代码如下
struct A
{
int a;
int b;
};
void threadfun(void *lpVoid);
void CombatPlan(int a, int b)
{
if(a)
{
cout<<a;
CombatPlan(a-1,b);
}
}

void threadFunc(void lpVoid)
{

A *p = (A
)lpVoid;
CombatPlan(p->a, p->b);
_endthread;
}

int main()
{
A a;
a.a = 4444;
a.b = 333;
HANDLE handle =(HANDLE)_beginthread((void(_cdecl*)(void*))threadFun,0,(void*)&a);
sleep(900);
TerminateThread(handle,0);
cout<<"hahaha";//运行不了
}

没有学过模糊识别,无法从你的图里复原出代码