共享一个bool变量
主线程设置它为true,工作线程轮询,发现它是true就退出。

解决方案 »

  1.   

    工作线程函数
    bool bFlag = true;///线程函数
    private void threadFunc()
    {
         while(bFlag)
          {
             Thread.Sleep(100);
             // do something      }
    }thread start后,
    bFlag为True,循环执行线程内部逻辑。
    如果需要退出,
    则将bFlga 置为False。
    线程正常退出。
    不知道LZ的工作线程怎么设计的,如果是执行完就结束,
    那没有办法,等着结束或者强制退Abort
      

  2.   

    如果线程内部有循环,那么就弄个全局变量,控制循环是否结束。
    要么就强制Abort
      

  3.   

    把窗体的thread设置成public,在controls.clear之前就把窗体的线程Abort掉