更新:2007 年 11 月

线程处理使 C# 程序能够执行并发处理,以便您可以同时执行多个操作。例如,您可以使用线程处理来监视用户输入,执行后台任务,以及处理并发输入流。System.Threading 命名空间提供支持多线程编程的类和接口,使您可以轻松地执行创建和启动新线程,同步多个线程,挂起线程以及中止线程等任务。

若要在 C# 代码中合并线程处理,请创建一个将在主线程外执行的函数,并让一个新的 Thread 对象指向该函数。下面的代码示例在 C# 应用程序中创建一个新线程:

C# 复制代码
System.Threading.Thread newThread;
newThread = new System.Threading.Thread(anObject.AMethod);

下面的代码示例在 C# 应用程序中启动一个新线程:

C# 复制代码
newThread.Start();

多线程处理可解决响应性和多任务的问题,但同时引入了资源共享和同步问题,因为根据对机制进行调度的中央线程,线程将在没有警告的情况下中断和继续。有关更多信息,请参见线程同步(C# 编程指南)。有关概述信息,请参见使用线程和线程处理

概述

线程具有以下特点:

  • 线程使 C# 程序能够执行并发处理。

  • .NET Framework 的 System.Threading 命名空间使线程更易于使用。

  • 线程共享应用程序的资源。有关更多信息,请参见 使用线程和线程处理

相关章节

C# 语言规范

有关更多信息,请参见 C# 语言规范中的以下各章节:

  • 3.10 执行顺序

  • 8.12 lock 语句

  • 10.5.3 可变字段

  • 10.8.1 类似字段的事件

请参见

任务

监视器同步技术示例
等待同步技术示例

概念

Mutex
监视器
互锁操作
AutoResetEvent

参考

Thread
Mutex

其他资源