Tag: 线程线程状态

.NET框架中的线程生命周期

此链接中解释了.NET框架中的线程状态。 我最近在一个网站上看到了这张照片,我想到了几个问题: OS中的线程生命周期与.NET框架中的线程生命周期并不完全一致。 有人可以提供与.NET框架中的操作系统状态相匹配的资源吗? 我们在.NET框架中没有名为Blocked的状态。 如果发出I / O请求,线程的状态是什么? Aborted州的目的是什么? 当一个线程调用Abort()方法时,它将进入AbortRequested状态,并在线程响应中止请求后,它将进入Stopped状态。 那么Aborted状态的function是什么?

Thread.IsAlive和Thread.ThreadState == ThreadState.Running

我用if(Thread.IsAlive)来检查线程的状态。 表单正在此线程中运行。 有时在执行期间,即使表单保持打开状态,对Thread.IsAlive的调用似乎也在评估为false。 我想用if(Thread.ThreadState==ThreadState.Running)执行相同的检查。 这是正确的方法吗? 如果没有,可能的工作是什么?