托管线程处理基本知识

本节的前五篇文章有助于确定何时使用托管线程处理,并介绍一些基本功能。 若要了解提供附加功能的类,请参阅线程处理对象和功能同步基元概述

本节中的剩余文章涵盖了高级主题,其中包括托管线程与 Windows 操作系统的交互。

注意

从 .NET Framework 4 开始,任务并行库和 PLINQ 提供了多线程程序中的任务并行和数据并行 API。 有关详细信息,请参阅并行编程

本节内容

线程与线程处理
介绍了多个线程的优缺点,并概述了可能创建线程或使用线程池线程的方案。

托管线程中的异常
介绍了对于不同版本的 .NET,线程中未经处理的异常行为,特别是导致应用程序终止的情况。

为多线程处理同步数据
介绍了在用于多个线程的类中同步数据的策略。

前台和后台线程
介绍了前台和后台线程的区别。

Windows 中的托管和非托管线程
介绍了托管和非托管线程的关系,列出了 Windows 线程 API 的相当托管版本,并讨论了 COM 单元和托管线程的交互。

线程本地存储:线程相关的静态字段和数据槽
介绍了线程相对存储机制。

参考

Thread 提供线程类的参考文档,无论该类是来自非托管代码还是在托管应用程序中创建的,它都表示一个托管线程。

BackgroundWorker 提供了一种安全实现多线程处理与用户界面对象的方式。

同步基元概述
介绍了用于同步多个线程活动的托管类。

托管线程处理的最佳做法
介绍了常见的多线程处理问题,以及避免这些问题发生的策略。

并行编程
介绍了任务并行库和 PLINQ,它们极大地简化了创建异步和多线程 .NET 应用程序的工作。

System.Threading.Channels 库
介绍 System.Threading.Channels 库,该库提供一组同步数据结构,用于以异步方式在制作者和使用者之间传递数据。