Table of Contents

Namespace CryptoHives.Foundation.Threading.Async.Pooled

Classes

AsyncAutoResetEvent

An async version of AutoResetEvent which uses a pooled approach to implement waiters for ValueTask to reduce memory allocations.

AsyncBarrier

An async barrier synchronization primitive which uses a pooled approach to implement waiters for ValueTask to reduce memory allocations.

AsyncCountdownEvent

An async version of CountdownEvent which uses a pooled approach to implement waiters for ValueTask to reduce memory allocations.

AsyncLock

An allocation-free async-compatible exclusive lock implemented with pooled ValueTask sources. Note that this lock is not recursive!

AsyncManualResetEvent

An async version of ManualResetEvent which uses a pooled approach to implement waiters for ValueTask to reduce memory allocations.

AsyncReaderWriterLock

An async reader-writer lock which uses a pooled approach to implement waiters for ValueTask to reduce memory allocations. Supports optional timeout and cancellation token parameters on all lock acquisition methods.

AsyncSemaphore

An async version of SemaphoreSlim which uses a pooled approach to implement waiters for ValueTask to reduce memory allocations.

Structs

AsyncLock.Releaser

A small value type returned by awaiting a lock acquisition. Disposing the releaser releases the lock.

AsyncReaderWriterLock.Releaser

A small value type returned by awaiting a lock acquisition. Disposing the releaser releases the lock.

Enums

AsyncReaderWriterLock.Releaser.ReleaserType

Specifies the releaser type.