Multithreading API Index
This index provides a categorized overview of the primary APIs available in the .NET Framework for managing and utilizing multithreading.
Core Threading Types
System.Threading.Thread: Represents a thread of execution in the operating system.System.Threading.ThreadPool: Manages a pool of reusable threads.System.Threading.ThreadStart: Delegate for specifying methods that execute asynchronously.System.Threading.ParameterizedThreadStart: Delegate for specifying methods that accept a single object parameter.
Synchronization Primitives
These types help manage concurrent access to shared resources.
System.Threading.Mutex: Controls access to a resource that is shared by multiple threads.System.Threading.Semaphore: Limits the number of threads that can access a resource or pool of resources concurrently.System.Threading.Monitor: Provides a mechanism for thread synchronization by entering and exiting code blocks.System.Threading.Interlocked: Provides atomic operations for basic types.System.Threading.ReaderWriterLock: A lock that allows multiple readers or a single writer.System.Threading.WaitHandle: An abstract base class for synchronization objects.System.Threading.EventWaitHandle(and its inheritorsAutoResetEvent,ManualResetEvent): Signals one or more threads that an event has occurred.System.Threading.CountdownEvent: An event that is signaled when its count reaches zero.System.Threading.Barrier: Enables multiple threads to cooperatively wait for all threads to reach a common barrier point.
Tasks and Parallelism
Higher-level abstractions for asynchronous operations and data parallelism.
System.Threading.Tasks.Task: Represents an asynchronous operation.System.Threading.Tasks.Task: Represents an asynchronous operation that returns a result.System.Threading.Tasks.Parallel: Provides static methods that support data parallelism.System.Threading.CancellationTokenSource: Propagates a notification that operations should be canceled.System.Threading.CancellationToken: A struct used to signal cancellation.System.Collections.Concurrent.ConcurrentQueue,ConcurrentStack,ConcurrentDictionary: Thread-safe collection types.
Advanced Concepts and Related APIs
System.Threading.ThreadLocal: Provides thread-local storage.System.Threading.LockRecursionPolicy: Specifies the recursion policy for locks.System.ComponentModel.BackgroundWorker: A component that provides a simple way to run an operation on a separate thread.System.Timers.Timer: A timer that raises an event at regular intervals.System.Threading.Tasks.Dataflow: Provides a block-based programming model for dataflow.