本文档已存档,并且将不进行维护。

System.Threading 命名空间

更新:2007 年 11 月

System.Threading 命名空间提供一些使得可以进行多线程编程的类和接口。除同步线程活动和访问数据的类(MutexMonitorInterlockedAutoResetEvent 等)外,此命名空间还包含一个 ThreadPool 类(它允许用户使用系统提供的线程池)和一个 Timer 类(它在线程池线程上执行回调方法)。

  说明
AbandonedMutexException当某个线程获取由另一个线程放弃(即在未释放的情况下退出)的 Mutex 对象时引发的异常。
AutoResetEvent通知正在等待的线程已发生事件。无法继承此类。
CompressedStack 提供方法用于设置和捕获当前线程上的压缩堆栈。无法继承此类。
EventWaitHandle表示一个线程同步事件。
ExecutionContext管理当前线程的执行上下文。无法继承此类。
HostExecutionContext在线程之间封装并传播宿主执行上下文。
HostExecutionContextManager提供使公共语言运行库宿主可以参与执行上下文的流动(或移植)的功能。
Interlocked为多个线程共享的变量提供原子操作。
LockRecursionException当进入锁定状态的递归与此锁定的递归策略不兼容时引发的异常。
ManualResetEvent通知一个或多个正在等待的线程已发生事件。无法继承此类。
Monitor提供同步访问对象的机制。
Mutex一个同步基元,也可用于进程间同步。
Overlapped提供一个 Win32 OVERLAPPED 结构的托管表示形式,包括将信息从 Overlapped 实例传输到 NativeOverlapped 结构的方法。
ReaderWriterLock定义支持单个写线程和多个读线程的锁。
ReaderWriterLockSlim 表示用于管理资源访问的锁定状态,可实现多线程读取或进行独占式写入访问。
RegisteredWaitHandle表示在调用 RegisterWaitForSingleObject 时已注册的句柄。无法继承此类。
Semaphore限制可同时访问某一资源或资源池的线程数。
SemaphoreFullException对计数已达到最大值的信号量调用 Semaphore.Release 方法时引发的异常。
SynchronizationContext提供在各种同步模型中传播同步上下文的基本功能。
SynchronizationLockException当某个方法请求调用方拥有给定 Monitor 上的锁时将引发该异常,而且由不拥有该锁的调用方调用此方法。
Thread创建并控制线程,设置其优先级并获取其状态。
ThreadAbortException在对 Abort 方法进行调用时引发的异常。无法继承此类。
ThreadExceptionEventArgsThreadException 事件提供数据。
ThreadInterruptedException中断处于等待状态的 Thread 时引发的异常。
ThreadPool 提供一个线程池,该线程池可用于发送工作项、处理异步 I/O、代表其他线程等待以及处理计时器。
ThreadStartException当基础操作系统线程已启动但该线程尚未准备好执行用户代码前,托管线程中出现错误,则会引发异常。
ThreadStateExceptionThread 处于对方法调用无效的 ThreadState 时引发的异常。
Timeout包含用于指定无限长的时间的常数。无法继承此类。
Timer提供以指定的时间间隔执行方法的机制。无法继承此类。
WaitHandle 封装等待对共享资源的独占访问的操作系统特定的对象。
WaitHandleCannotBeOpenedException在试图打开不存在的系统互斥体或信号量时引发的异常。

  结构说明
AsyncFlowControl提供功能以还原执行上下文在线程之间的迁移(或流动)。
LockCookie定义实现单个编写器/多个阅读器语义的锁。这是值类型。
NativeOverlapped提供一种显式布局,它在非托管代码中可见,并将具有与 Win32 OVERLAPPED 结构相同的布局且在结尾有附加保留的字段。

  委托说明
ContextCallback表示要在新上下文中调用的方法。
IOCompletionCallback当 I/O 操作在线程池上完成时接收错误代码、字节数和重叠值类型。
ParameterizedThreadStart表示在 Thread 上执行的方法。
SendOrPostCallback表示在消息即将被调度到同步上下文时要调用的方法。
ThreadExceptionEventHandler表示将要处理 ApplicationThreadException 事件的方法。
ThreadStart表示在 Thread 上执行的方法。
TimerCallback表示处理来自 Timer 的调用的方法。
WaitCallback表示线程池线程要执行的回调方法。
WaitOrTimerCallback表示当 WaitHandle 超时或终止时要调用的方法。

  枚举说明
ApartmentState指定 Thread 的单元状态。
EventResetMode指示在接收信号后是自动重置 EventWaitHandle 还是手动重置。
LockRecursionPolicy指定同一个线程是否可以多次进入一个锁定状态。
ThreadPriority指定 Thread 的调度优先级。
ThreadState指定 Thread 的执行状态。
显示: