if(thr.IsAlive)
            {
                thr.Abort();
                thr.Join(5000);
                thr = null;
            }因为切换树节点的时候 数据量较大,加了等待的,  加了线程后 我点的慢点没问题,如果我连续快速的点树就会出现“正在中止线程”  的异常  请问如果解决

解决方案 »

  1.   

    thr.Abort();
    “正在中止线程” 的异常 如果必须要哪个
    thr.Abort();
    那么
    try
    {
    thr.Abort();}
    catch
    {
    }
      

  2.   

    谈不上“解决”。这类异常是必然出现的,就好象你去访问磁盘来保存文件,结果恰好磁盘被雷劈了,你想要解决“被雷劈”的问题?要说解决,那么就根本不要使用thread.Abort()。而应该自己写出线程所执行的程序中主动结束程序的代码。
      

  3.   

    查代码吧
    只要代码执行到Abort();
    必然会引发异常的
      

  4.   

    你在制造一个Abort,它本来就是要靠强行抛出异常来让线程终止。应该自己实现通知程序退出的功能。
      

  5.   

    thr.Abort();
    thr.Join(5000);Abort 完还 Join 这本身就有问题两个顺序先换过来再看看
      

  6.   

    其实有点多余,thread执行完就自己销毁了,也没必要自己去Abort()除非你是要退出应用程序。