线程内部抛出异常问题:
天才小痴 2011-01-10 11:13:03 程序伪代码:
unsigned __stdcall ThreadFun( void *pParam)
{
int a = 0;
try{
if(case)
{
a = fun1();
}
else
{
a = fun2();
}
if(1 != a)
{
return -1;
}
}
catch
{
return -1;
}
return 0;
}
函数fun1,fun2返回值0和1。
创建线程1,case为真,这是fun1抛出异常,被catch掉。再创建线程2,case为假,这是线程三个出口都没有走到。
请高手给分析一下:多谢了。