System.Threading 命名空间 
重要
一些信息与预发行产品相关,相应产品在发行之前可能会进行重大修改。 对于此处提供的信息,Microsoft 不作任何明示或暗示的担保。
提供支持多线程编程的类和接口。 除同步线程活动和数据访问的类(Mutex、Monitor、 Interlocked、AutoResetEvent等)之外,此命名空间还包含一个 ThreadPool 类(它可让用户使用系统提供的线程池)和一个 Timer 类(在线程池线程上执行回调方法)。
类
| AbandonedMutexException | 当某个线程获取由另一个线程放弃(即在未释放的情况下退出)的 Mutex 对象时引发的异常。 | 
| AsyncLocal<T> | 表示对于给定异步控制流(如异步方法)是本地数据的环境数据。 | 
| AutoResetEvent | 表示一个线程同步事件,该事件在发出信号时释放一个等待线程,然后自动重置。 此类不能被继承。 | 
| Barrier | 使多个任务能够采用并行方式依据某种算法在多个阶段中协同工作。 | 
| BarrierPostPhaseException | Barrier 阶段后操作失败时引发的异常。 | 
| CancellationTokenSource | 通知 CancellationToken,告知其应被取消。 | 
| CompressedStack | 提供方法用于设置和捕获当前线程上的压缩堆栈。 此类不能被继承。 | 
| CountdownEvent | 表示在计数变为零时处于有信号状态的同步基元。 | 
| EventWaitHandle | 表示一个线程同步事件。 | 
| EventWaitHandleAcl | 提供了一种特定于 Windows 的扩展方法,用于通过特定的访问控制列表 (ACL) 安全性来创建 EventWaitHandle 对象。 | 
| ExecutionContext | 管理当前线程的执行上下文。 此类不能被继承。 | 
| HostExecutionContext | 在线程之间封装并传播宿主执行上下文。 | 
| HostExecutionContextManager | 提供使公共语言运行时宿主可以参与执行上下文的流动(或移植)的功能。 | 
| Interlocked | 为多个线程共享的变量提供原子操作。 | 
| LazyInitializer | 提供延迟初始化例程。 | 
| Lock | 提供一种机制,用于在不同线程之间的代码区域中实现相互排斥。 | 
| LockRecursionException | 当进入锁定状态的递归与此锁定的递归策略不兼容时引发的异常。 | 
| ManualResetEvent | 表示线程同步事件,收到信号时,必须手动重置该事件。 此类不能被继承。 | 
| ManualResetEventSlim | 表示线程同步事件,收到信号时,必须手动重置该事件。 此类是 ManualResetEvent 的轻量替代项。 | 
| Monitor | 提供同步访问对象的机制。 | 
| Mutex | 还可用于进程间同步的同步基元。 | 
| MutexAcl | 提供了一种特定于 Windows 的扩展方法,用于通过特定的访问控制列表 (ACL) 安全性来创建 Mutex 对象。 | 
| Overlapped | 提供 Win32  | 
| PeriodicTimer | 提供一个定期计时器,用于异步等待计时器计时周期。 | 
| PreAllocatedOverlapped | 表示本机重叠 I/O 操作的预分配状态。 | 
| ReaderWriterLock | 定义支持单个写线程和多个读线程的锁。 | 
| ReaderWriterLockSlim | 表示用于管理资源访问的锁定状态,可实现多线程读取或进行独占式写入访问。 | 
| RegisteredWaitHandle | 表示在调用 RegisterWaitForSingleObject(WaitHandle, WaitOrTimerCallback, Object, UInt32, Boolean) 时已注册的句柄。 此类不能被继承。 | 
| Semaphore | 限制可同时访问某一资源或资源池的线程数。 | 
| SemaphoreAcl | 提供了一种特定于 Windows 的扩展方法,用于通过特定的访问控制列表 (ACL) 安全性来创建 Semaphore 对象。 | 
| SemaphoreFullException | 对已经达到最大计数值的信号量调用 Release 方法时引发的异常。 | 
| SemaphoreSlim | 对可同时访问资源或资源池的线程数加以限制的 Semaphore 的轻量替代。 | 
| SynchronizationContext | 提供在各种同步模型中传播同步上下文的基本功能。 | 
| SynchronizationLockException | 当某个方法要求调用方拥有给定 Monitor 上的锁并且该方法由不拥有该锁的调用方调用时引发的异常。 | 
| Thread | 创建和控制线程,设置其优先级并获取其状态。 | 
| ThreadAbortException | 当对 Abort(Object) 方法发出调用时引发的异常。 此类不能被继承。 | 
| ThreadExceptionEventArgs | 为 ThreadException 事件提供数据。 | 
| ThreadingAclExtensions | 提供特定于 Windows 的扩展方法,用来管理 EventWaitHandleMutex 和 Semaphore 的访问控制列表 (ACL) 安全描述符。 | 
| ThreadInterruptedException | 中断处于等待状态的 Thread 时引发的异常。 | 
| ThreadLocal<T> | 提供数据的线程本地存储。 | 
| ThreadPool | 提供一个线程池,该线程池可用于执行任务、发送工作项、处理异步 I/O、代表其他线程等待以及处理计时器。 | 
| ThreadPoolBoundHandle | 表示已绑定到系统线程池的 I/O 句柄,并使低级别组件能够接收异步 I/O 操作的通知。 | 
| ThreadStartException | 当基础操作系统线程已启动但该线程尚未准备好执行用户代码前,托管线程中出现错误,则会引发异常。 | 
| ThreadStateException | 当 Thread 处于对方法调用无效的 ThreadState 时引发的异常。 | 
| Timeout | 包含指定无限期超时间隔的常数。 此类不能被继承。 | 
| Timer | 提供以指定的时间间隔对线程池线程执行方法的机制。 此类不能被继承。 | 
| Volatile | 包含用于执行可变内存操作的方法。 | 
| WaitHandle | 封装等待对共享资源进行独占访问的操作系统特定的对象。 | 
| WaitHandleCannotBeOpenedException | 当尝试打开不存在的系统互斥体、信号量或事件等待句柄时引发的异常。 | 
| WaitHandleExtensions | 提供针对 wait 句柄使用 safe 句柄的简便方法。 | 
结构
| AsyncFlowControl | 提供功能以还原执行上下文在线程之间的迁移(或流动)。 | 
| AsyncLocalValueChangedArgs<T> | 向针对更改通知进行了注册的 AsyncLocal<T> 实例提供数据更改信息的类。 | 
| CancellationToken | 传播有关应取消操作的通知。 | 
| CancellationTokenRegistration | 表示已向 CancellationToken 注册的回调委托。 | 
| Lock.Scope | 表示 Lock 可能已输入的 。 | 
| LockCookie | 定义实现单个编写器/多个阅读器语义的锁。 这是值类型。 | 
| NamedWaitHandleOptions | 提供支持多线程编程的类和接口。 除同步线程活动和数据访问的类(Mutex、Monitor、 Interlocked、AutoResetEvent等)之外,此命名空间还包含一个 ThreadPool 类(它可让用户使用系统提供的线程池)和一个 Timer 类(在线程池线程上执行回调方法)。 | 
| NativeOverlapped | 提供可从非托管代码查看的显式布局,与 Win32 OVERLAPPED 结构的布局相同,末尾具有其他保留字段。 | 
| SpinLock | 提供一个相互排斥锁基元,在该基元中,尝试获取锁的线程将在重复检查的循环中等待,直至该锁变为可用为止。 | 
| SpinWait | 为基于自旋的等待提供支持。 | 
接口
| IThreadPoolWorkItem | 表示可由 ThreadPool 执行的工作项。 | 
| ITimer | 表示可以更改其到期时间和时间段的计时器。 | 
枚举
| ApartmentState | 指定 Thread 的单元状态。 | 
| EventResetMode | 指示在接收信号后是自动重置 EventWaitHandle 还是手动重置。 | 
| LazyThreadSafetyMode | 指定 Lazy<T> 实例如何同步多个线程间的访问。 | 
| LockRecursionPolicy | 指定同一个线程是否可以多次进入一个锁定状态。 | 
| ThreadPriority | 指定 Thread 的调度优先级。 | 
| ThreadState | 指定 Thread 的执行状态。 | 
委托
| ContextCallback | 表示要在新的上下文中调用的方法。 | 
| IOCompletionCallback | 当 I/O 操作在线程池上完成时接收错误代码、字节数和重叠值类型。 | 
| ParameterizedThreadStart | 表示在 Thread 上执行的方法。 | 
| SendOrPostCallback | 表示在消息即将被调度到同步上下文时要调用的方法。 | 
| ThreadExceptionEventHandler | 表示将要处理 Application 的 ThreadException 事件的方法。 | 
| ThreadStart | 表示在 Thread 上执行的方法。 | 
| TimerCallback | 表示处理来自 Timer 的调用的方法。 | 
| WaitCallback | 表示要由线程池线程执行的回调方法。 | 
| WaitOrTimerCallback | 表示当 WaitHandle 超时或终止时要调用的方法。 |