Managed Threading Basics 

The first five topics of this section are designed to help you determine when to use managed threading, and to explain some basic features. For information on classes that provide additional features, see Threading Objects and Features and Overview of Synchronization Primitives.

The rest of the topics in this section cover advanced topics, including the interaction of managed threading with the Windows operating system.

In This Section

Threads and Threading

Discusses the advantages and drawbacks of multiple threads, and outlines the scenarios in which you might create threads or use thread pool threads.

Exceptions in Managed Threads

Describes the behavior of unhandled exceptions in threads for different versions of the .NET Framework, in particular the situations in which they result in termination of the application.

Synchronizing Data for Multithreading

Describes strategies for synchronizing data in classes that will be used with multiple threads.

Managed Thread States

Describes the basic thread states, and explains how to detect whether a thread is running.

Foreground and Background Threads

Explains the differences between foreground and background threads.

Managed and Unmanaged Threading in Microsoft Windows

Discusses the relationship between managed and unmanaged threading, lists managed equivalents for Windows threading APIs, and discusses the interaction of COM apartments and managed threads.

Thread.Suspend, Garbage Collection, and Safe Points

Describes thread suspension and garbage collection.

Thread Local Storage and Thread-Relative Static Fields

Describes thread-relative storage mechanisms.



Provides reference documentation for the Thread class, which represents a managed thread, whether it came from unmanaged code or was created in a managed application.


Provides a safe way to implement multithreading in conjunction with user-interface objects.

Related Sections

Overview of Synchronization Primitives

Describes the managed classes used to synchronize the activities of multiple threads.

Managed Threading Best Practices

Describes common problems with multithreading and strategies for avoiding problems.