Show / Hide Table of Contents

Namespace DotNext.Threading

Classes

AsyncAutoResetEvent

Represents asynchronous version of AutoResetEvent.

AsyncBarrier

Enables multiple tasks to cooperatively work on an algorithm in parallel through multiple phases.

AsyncBridge

Allows to turn WaitHandle and CancellationToken into task.

AsyncCorrelationSource<TKey, TValue>

Represents pub/sub synchronization primitive when each event has unique identifier.

AsyncCountdownEvent

Represents a synchronization primitive that is signaled when its count reaches zero.

AsyncCounter

Represents a synchronization primitive that is signaled when its count becomes non-zero.

AsyncEventHub

Represents a collection of asynchronous events.

AsyncExchanger<T>

Represents a synchronization point at which two async flows can cooperate and swap elements within pairs.

AsyncExclusiveLock

Represents asynchronous mutually exclusive lock.

AsyncLazy<T>

Provides support for asynchronous lazy initialization.

AsyncLockAcquisition

Provides a set of methods to acquire different types of asynchronous lock.

AsyncManualResetEvent

Represents asynchronous version of ManualResetEvent.

AsyncReaderWriterLock

Represents asynchronous version of ReaderWriterLockSlim.

AsyncSharedLock

Represents a lock that can be acquired in exclusive or weak mode.

AsyncTrigger

Represents asynchronous trigger that allows to resume and suspend concurrent flows.

Atomic

Exposes atomic operations for thread-safe scenarios.

Epoch

Implements epoch-based reclamation.

Epoch.Discardable

Represents an object which lifetime is controlled by Epoch internal Garbage Collector.

ExchangeTerminatedException

Indicates that the exchange has been terminated by the one of participants.

LinkedCancellationTokenSource

Gets cancellation token source that allows to obtain the token that causes cancellation.

LinkedTokenSourceFactory

Represents helper methods for working with linked cancellation tokens.

LockAcquisition

Provides a set of methods to acquire different types of lock.

PendingTaskInterruptedException

The exception that is thrown when pending asynchronous task is interrupted while it is in waiting state.

QueuedSynchronizer

Provides a framework for implementing asynchronous locks and related synchronization primitives that rely on first-in-first-out (FIFO) wait queues.

QueuedSynchronizer<TContext>

Provides low-level infrastructure for writing custom synchronization primitives.

Scheduler

Represents timer-based scheduler.

Scheduler.DelayedTask

Represents a task with delayed completion.

Scheduler.DelayedTaskCanceledException

Represents an exception indicating that the delayed task is canceled safely without entering the scheduled callback.

Scheduler.DelayedTask<TResult>

Represents a task with delayed completion.

ThreadPoolWorkItemFactory

Represents factory of thread pool work items.

Structs

AsyncEventHub.EventGroup

Represents a group of events.

AsyncEventHub.EventGroup.Enumerator

Represents an enumerator over indices.

AsyncLock

Unified representation of asynchronous exclusive lock, semaphore lock, read lock, write lock or upgradeable read lock.

AsyncLock.Holder

Represents acquired asynchronous lock.

AsyncReaderWriterLock.LockStamp

Represents lock stamp used for optimistic reading.

Atomic.Boolean

Represents atomic boolean.

Atomic<T>

Provides atomic access to non-primitive data type.

Epoch.RecycleBin

Encapsulates actions deferred previously by Defer(Action) method and its overloads.

Epoch.Scope

Represents a scope of the region of code protected by the epoch.

Lock

Unified representation of monitor lock, semaphore lock, read lock, write lock or upgradeable read lock.

Lock.Holder

Represents acquired lock holder.

ReaderWriterSpinLock

Represents lightweight reader-writer lock based on spin loop.

ReaderWriterSpinLock.LockStamp

Represents lock stamp used for optimistic reading.

Timeout

Helps to compute timeout for asynchronous operations.

Interfaces

IAsyncEvent

Represents asynchronous event.

IAsyncResetEvent

Represents asynchronous flow synchronization event.

IInterlockedOperations<T>

Represents interlocked operations.

Delegates

Atomic<T>.Accumulator

Represents atomic accumulator.

Atomic<T>.Updater

Represents atomic update action.

☀
☾
In this article
Back to top
Supported by the .NET Foundation
☀
☾