# destack:async

`import destack:async`

## Classes

- [AsyncGenerator](/docs/language/standard-library/modules/async/class/async-generator/) — Async generator object.
- [AsyncMutex](/docs/language/standard-library/modules/async/class/async-mutex/) — Asynchronous mutual exclusion lock.
- [AsyncOnce](/docs/language/standard-library/modules/async/class/async-once/) — One-time async execution state.
- [AsyncOnceCell](/docs/language/standard-library/modules/async/class/async-once-cell/) — One-time async initialized cell.
- [AsyncRwLock](/docs/language/standard-library/modules/async/class/async-rw-lock/) — Asynchronous reader-writer lock.
- [AsyncSemaphore](/docs/language/standard-library/modules/async/class/async-semaphore/) — Asynchronous counting semaphore.
- [Generator](/docs/language/standard-library/modules/async/class/generator/) — Generator object.
- [Notify](/docs/language/standard-library/modules/async/class/notify/) — Asynchronous notification primitive.
- [Promise](/docs/language/standard-library/modules/async/class/promise/) — Value produced by asynchronous execution.
- [Task](/docs/language/standard-library/modules/async/class/task/) — Single-consumer asynchronous result on its own fiber.

## Structs

- [AsyncMutexGuard](/docs/language/standard-library/modules/async/struct/async-mutex-guard/) — Active async mutex guard.
- [AsyncRwLockReadGuard](/docs/language/standard-library/modules/async/struct/async-rw-lock-read-guard/) — Active async readonly lock guard.
- [AsyncRwLockWriteGuard](/docs/language/standard-library/modules/async/struct/async-rw-lock-write-guard/) — Active async exclusive lock guard.
- [AsyncSemaphorePermit](/docs/language/standard-library/modules/async/struct/async-semaphore-permit/) — Active async semaphore permit.
- [Fiber](/docs/language/standard-library/modules/async/struct/fiber/) — Cooperative execution on the current Worker.
- [GeneratorChannel](/docs/language/standard-library/modules/async/struct/generator-channel/) — Step surface passed to one lowered generator body.
- [GeneratorResumeFinish](/docs/language/standard-library/modules/async/struct/generator-resume-finish/) — Run the body's return path with one completion value.
- [GeneratorResumeNext](/docs/language/standard-library/modules/async/struct/generator-resume-next/) — Continue the body with one sent value.
- [PromiseResolvers](/docs/language/standard-library/modules/async/struct/promise-resolvers/) — Promise with its resolving function.
- [TaskScope](/docs/language/standard-library/modules/async/struct/task-scope/) — Structured owner of spawned tasks.

## Newtypes

- [AsyncResult](/docs/language/standard-library/modules/async/newtype/async-result/) — Async recoverable success or failure.

## Newtype interfaces

- [AsyncIterable](/docs/language/standard-library/modules/async/newtype-interface/async-iterable/) — Value that can produce an async iterator.
- [AsyncIterator](/docs/language/standard-library/modules/async/newtype-interface/async-iterator/) — Protocol for asynchronously producing values.

## Interfaces

- [AsyncReader](/docs/language/standard-library/modules/async/interface/async-reader/) — Asynchronous byte reader.
- [AsyncSeeker](/docs/language/standard-library/modules/async/interface/async-seeker/) — Asynchronous seekable byte stream.
- [AsyncWriter](/docs/language/standard-library/modules/async/interface/async-writer/) — Asynchronous byte writer.

## Type aliases

- [GeneratorResult](/docs/language/standard-library/modules/async/type-alias/generator-result/) — The union of generator yield and return results.
- [GeneratorResume](/docs/language/standard-library/modules/async/type-alias/generator-resume/) — One consumer request delivered back into a generator body.

## Functions

- [queueMicrotask](/docs/language/standard-library/modules/async/function/queue-microtask/) — Queue one function after the active task finishes.
- [yieldNow](/docs/language/standard-library/modules/async/function/yield-now/) — Yield the current fiber back to the Worker scheduler.
