日期:2014-05-17  浏览次数:20909 次

求问Thread的问题
现在有一个类,如下所示
现在按照这个的写法,中断和恢复都会报错,说已经过时了,现在我要实现在run()的过程中,暂停或恢复线程,除了这么写,还有其他办法吗?
using System.Threading;
class Class1
{
  public Class1() { }

  public Thread thread;


  public void ThreadPause()
  {
  thread.Suspend();
  }

  public void ThreadResume()
  {
  thread.Resume();
  }

  public void Run()
  {
  thread = new Thread(new ParameterizedThreadStart(DoWork));
  thread.TrySetApartmentState(ApartmentState.STA);
  thread.Start(args);
  }
   
}

------解决方案--------------------
DoWork执行完了,线程就结束了,你再去中断当然访问出错了,至少你要保证中断时,线程还在正常的运行才行
------解决方案--------------------
暂停?没这一说吧?休眠到有
另外下面的可能也有点用
C# code

      if (thread != null && thread.IsAlive)
            {
                thread.Abort();
            }