Link

Table of contents


ConcurrentQueue (interface)

Signature

export interface ConcurrentQueue<A> {
  readonly take: Wave<never, A>
  offer(a: A): Wave<never, void>
}

boundedQueue (function)

Create a bounded queue that blocks offers on capacity

Signature

export function boundedQueue<A>(capacity: number): Wave<never, ConcurrentQueue<A>> { ... }

droppingQueue (function)

Create a dropping queue with the given capacity that drops offers on full

Signature

export function droppingQueue<A>(capacity: number): Wave<never, ConcurrentQueue<A>> { ... }

slidingQueue (function)

Create a bounded queue with the given capacity that drops older offers

Signature

export function slidingQueue<A>(capacity: number): Wave<never, ConcurrentQueue<A>> { ... }

unboundedQueue (function)

Create an unbounded concurrent queue

Signature

export function unboundedQueue<A>(): Wave<never, ConcurrentQueue<A>> { ... }