API reference@evolu/commonTask › SemaphoreSnapshot

Defined in: packages/common/src/Task.ts:5656

Snapshot returned by Semaphore.snapshot.

Properties

available

readonly available: number & Brand<"NonNaN"> & Brand<"Finite"> & Brand<"Int"> & Brand<"NonNegative">;

Defined in: packages/common/src/Task.ts:5681

Permits available for immediate acquisition.

In "fifo" mode, this is 0 while requests are queued because later acquisitions cannot bypass them.

When the total permit count is resized below currently held permits, this is 0 until enough permits are released.


isIdle

readonly isIdle: boolean;

Defined in: packages/common/src/Task.ts:5684

Whether no permits are held and no requests are queued.


permits

readonly permits: Int1To100OrPositiveInt;

Defined in: packages/common/src/Task.ts:5661

Total configured permits.


policy

readonly policy: SemaphorePolicy;

Defined in: packages/common/src/Task.ts:5658

Acquisition scheduling policy.


taken

readonly taken: number & Brand<"NonNaN"> & Brand<"Finite"> & Brand<"Int"> & Brand<"NonNegative">;

Defined in: packages/common/src/Task.ts:5664

Currently held permits.


waiters

readonly waiters: readonly {
  permits: Int1To100OrPositiveInt;
}[];

Defined in: packages/common/src/Task.ts:5667

Queued acquisition requests.