Skip to content

ChainGraph API Documentation / @badaitech/chaingraph-types / AsyncQueue

Class: AsyncQueue<T>

Defined in: packages/chaingraph-types/src/utils/async-queue.ts:15

Type Parameters

T

T

Constructors

Constructor

new AsyncQueue<T>(): AsyncQueue<T>

Returns

AsyncQueue<T>

Methods

[asyncIterator]()

[asyncIterator](): AsyncIterator<T>

Defined in: packages/chaingraph-types/src/utils/async-queue.ts:157

Returns an async iterator for the queue.

Returns

AsyncIterator<T>


clear()

clear(): void

Defined in: packages/chaingraph-types/src/utils/async-queue.ts:150

Clears all items from the queue.

Returns

void


close()

close(): void

Defined in: packages/chaingraph-types/src/utils/async-queue.ts:97

Closes the queue. All waiting consumers will receive null. Future attempts to enqueue will throw an error.

Returns

void


dequeue()

dequeue(signal?): Promise<T | null>

Defined in: packages/chaingraph-types/src/utils/async-queue.ts:49

Dequeues an item from the queue. If the queue is empty, waits for an item to be enqueued.

Parameters

signal?

AbortSignal

Optional AbortSignal to cancel the wait

Returns

Promise<T | null>


enqueue()

enqueue(item): void

Defined in: packages/chaingraph-types/src/utils/async-queue.ts:27

Adds an item to the queue. If there are waiting consumers, the item is immediately delivered. Otherwise, it's added to the queue.

Parameters

item

T

Returns

void

Throws

Error if this queue is closed.


isClosed()

isClosed(): boolean

Defined in: packages/chaingraph-types/src/utils/async-queue.ts:118

Returns true if the queue is closed.

Returns

boolean


isEmpty()

isEmpty(): boolean

Defined in: packages/chaingraph-types/src/utils/async-queue.ts:111

Returns true if the queue is empty.

Returns

boolean


size()

size(): number

Defined in: packages/chaingraph-types/src/utils/async-queue.ts:125

Returns the current size of the queue.

Returns

number


tryDequeue()

tryDequeue(): T | null

Defined in: packages/chaingraph-types/src/utils/async-queue.ts:140

Tries to dequeue an item immediately without waiting. Returns null if the queue is empty.

Returns

T | null


waitingConsumers()

waitingConsumers(): number

Defined in: packages/chaingraph-types/src/utils/async-queue.ts:132

Returns the number of waiting consumers.

Returns

number

Licensed under BUSL-1.1