14

我用 . 来检查线程的状况if(Thread.IsAlive)。此线程中正在运行一个表单。有时在执行过程中,即使表单保持打开状态,对 Thread.IsAlive 的调用似乎评估为假。我想用if(Thread.ThreadState==ThreadState.Running). 这是正确的做法吗?如果没有,有什么可能的解决方法?

4

1 回答 1

18

msdn Thread.IsAlive 属性 如果此线程已启动且未正常终止或中止,则为 true;否则为假。

msdn Thread.ThreadState

  • Running
    线程已经启动,没有被阻塞,也没有挂起的 ThreadAbortException。
  • 停止请求
  • 暂停请求
  • 背景
  • 未开始
  • 等待睡眠加入
  • 暂停
  • 中止请求

我想现在很清楚Running是不一样的IsAlive

于 2013-04-26T09:07:45.377 回答