Thread.IsAlive和Thread.ThreadState == ThreadState.Running
我用if(Thread.IsAlive)
来检查线程的状态。 表单正在此线程中运行。 有时在执行期间,即使表单保持打开状态,对Thread.IsAlive的调用似乎也在评估为false。 我想用if(Thread.ThreadState==ThreadState.Running)
执行相同的检查。 这是正确的方法吗? 如果没有,可能的工作是什么?
msdn Thread.IsAlive属性如果此线程已启动且未正常终止或中止,则为true;否则为false。 否则,是的。
msdn Thread.ThreadState
- 运行
该线程已启动,未被阻止,并且没有挂起的ThreadAbortException。 - StopRequested
- SuspendRequested
- 背景
- 未开始
- WaitSleepJoin
- 暂停
- AbortRequested
我想现在很明显Running
和IsAlive
不一样了