当前位置: 代码迷 >> 综合 >> C# 线程 在 sleep,suspend 之后 Abort 的方法
  详细解决方案

C# 线程 在 sleep,suspend 之后 Abort 的方法

热度:91   发布时间:2024-01-04 10:44:08.0
1) 线程在sleep时的Abort  
  方法:对线程函数用 catch ThreadAbortException ,并return。
  示例:
    private void xxxThreadFunc(){for (; ; ){try{xxx();Thread.Sleep(500);        }catch (ThreadAbortException abortException){MessageBox.Show("ThreadAbortException :" + abortException.Message.ToString());return;}}            }


2) 线程在suspend时的Abort   
   方法:在对线程需要调用abort的地方  用 catch (ThreadStateException) , 并resume。 // 这有点不可思议, 但确实管用...  
   示例:
    try{xxxThreadFunc.Abort();}catch (ThreadStateException){xxxThreadFunc.Resume();}     
       
参考:http://www.albahari.com/threading/part4.aspx    

  相关解决方案