在C#中如何判断线程当前所处的状态
老帅
在C#中,线程对象Thread使用ThreadState属性指示线程状态,它是带Flags特性的枚举类型对象,因此判断线程当前的状态必须用bitmask按位运算来达到判断目的,不能直接使用相等来判断。
定义ThreadState如下: 
1.判断线程是否处于取消状态
A.错误的判断
(MyThread.ThreadState == ThreadState.AbortRequested)
B.正确的判断 (MyThread.ThreadState & ThreadState.AbortRequested) != 0
2.判断线程是否处于运行状态
这个有一点特殊,因为ThreadState.Running本身等于0,不能用&运算,所以判断可用以下方法: (MyThread.ThreadState == ThreadState.Running)
在C#中如何判断线程当前所处的状态
原文:http://blog.csdn.net/shuaihj/article/details/41315903