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

Man*_*iAm 16 .net c# multithreading thread-state

此链接中解释了.NET框架中的线程状态.

我最近在一个网站上看到了这张照片,我想到了几个问题:

在此输入图像描述

  1. OS中的线程生命周期与.NET框架中的线程生命周期不完全一致.有人可以提供与.NET框架中的操作系统状态相匹配的资源吗?

  2. 我们在.NET框架中没有名为Blocked的状态.如果发出I/O请求,线程的状态是什么?

  3. Aborted州的目的是什么?当一个线程调用该Abort()方法时,它将进入AbortRequested状态,并在线程响应中止请求后,它将进入Stopped状态.那么Aborted状态的功能是什么?

Rob*_*vey 6

如果线程的执行已被其中一个同步原语(如锁或互斥锁)挂起,则会阻塞该线程.根据定义,任何在给定时刻执行有用工作的线程在那时都不会被阻塞.

AbortRequested/Stopped循环使线程有机会执行有序关闭,释放获取的资源并执行其他清理任务.

http://www.albahari.com/threading/