有个线程我abort了,但是还在运行?难道没有作用吗?应该如何中断运行中的线程?

解决方案 »

  1.   

    Abort线程后并不是立即就结束的...try..thread.Abort();
    //等待直到线程结束..
    thread.Join();
      

  2.   

    用Abort会出现异常,所以一般最好不要用Abort...可以用标志位来进行处理...for example;while(flag)
    {
        //操作
    }
    //结束线程
    flag=false;
    thread.Join();
      

  3.   

    要想不出现异常,就要在外层截取线程中止异常,不予处理,SDK中已经说明调用Abort()始终会引发线程中止异常