Namespace LfrlAnvil.Async
Classes
- Batch<T>
Represents a queue of elements, which are processed in batches, automatically or on demand.
- Cancellable
Creates instances of Cancellable<T> type.
- ConcurrentReadOnlyCollection<T>
Wraps an IReadOnlyCollection<T> instance in a thread-safe object.
- CounterTask
An object that contains an underlying Task that gets completed once Count reaches the Limit.
- DedicatedThreadSynchronizationContext
Represents a SynchronizationContext with a dedicated underlying Thread.
- ManualResetValueTaskSource<TResult>
Represents an implementation of an object that can be wrapped by a ValueTask<TResult>.
- TaskRegistry
Represents an object useful for storing in-progress Task instances.
Structs
- Cancellable<T>
A lightweight object with a generic value and a CancellationToken instance.
- ExclusiveLock
A lightweight, disposable object representing an acquired monitor lock.
- InterlockedBoolean
A lightweight representation of an Interlocked (atomic) bool.
- InterlockedEnum<T>
A lightweight representation of an Interlocked (atomic) Enum.
- InterlockedInt32
A lightweight representation of an Interlocked (atomic) int.
- ReadLockSlim
A lightweight, disposable object representing an acquired read lock.
- SemaphoreEntrySlim
A lightweight, disposable object representing an acquired semaphore entry.
- SynchronizationContextSwitch
A disposable current SynchronizationContext switch object that reverts the change once it gets disposed.
- TaskSchedulerCapture
A lightweight object capable of extracting TaskScheduler instances from the current SynchronizationContext and capturing them.
- ThreadParams
Represents a set of Thread parameters.
- UpgradeableReadLockSlim
A lightweight, disposable object representing an acquired upgradeable read lock.
- WriteLockSlim
A lightweight, disposable object representing an acquired write lock.
Interfaces
- IBatch<T>
Represents a queue of elements, which are processed in batches, automatically or on demand.
Enums
- BatchQueueOverflowStrategy
Represents a strategy for handling IBatch<T> element overflow, according to its QueueSizeLimitHint property.
- TaskSchedulerCaptureStrategy
Represents a strategy for capturing a task scheduler.