TQueue

trait TQueue[A] extends TDequeue[A] with TEnqueue[A]

A TQueue is a transactional queue. Offerors can offer values to the queue and takers can take values from the queue.

Companion:
object
trait TEnqueue[A]
trait TDequeue[A]
class Object
trait Matchable
class Any

Value members

Concrete methods

final override def awaitShutdown: USTM[Unit]

Waits for the hub to be shut down.

Waits for the hub to be shut down.

Definition Classes
final override def isEmpty: USTM[Boolean]

Checks if the queue is empty.

Checks if the queue is empty.

Definition Classes
final override def isFull: USTM[Boolean]

Checks if the queue is at capacity.

Checks if the queue is at capacity.

Definition Classes

Inherited methods

def capacity: Int

The maximum capacity of the queue.

The maximum capacity of the queue.

Inherited from:
TEnqueue
def isShutdown: USTM[Boolean]

Checks whether the queue is shut down.

Checks whether the queue is shut down.

Inherited from:
TEnqueue
def offer(a: A): ZSTM[Any, Nothing, Boolean]

Offers a value to the queue, returning whether the value was offered to the queue.

Offers a value to the queue, returning whether the value was offered to the queue.

Inherited from:
TEnqueue
def offerAll(as: Iterable[A]): ZSTM[Any, Nothing, Boolean]

Offers all of the specified values to the queue, returning whether they were offered to the queue.

Offers all of the specified values to the queue, returning whether they were offered to the queue.

Inherited from:
TEnqueue
def peek: ZSTM[Any, Nothing, A]

Views the next element in the queue without removing it, retrying if the queue is empty.

Views the next element in the queue without removing it, retrying if the queue is empty.

Inherited from:
TDequeue
def peekOption: ZSTM[Any, Nothing, Option[A]]

Views the next element in the queue without removing it, returning None if the queue is empty.

Views the next element in the queue without removing it, returning None if the queue is empty.

Inherited from:
TDequeue
final def poll: ZSTM[Any, Nothing, Option[A]]

Takes a single element from the queue, returning None if the queue is empty.

Takes a single element from the queue, returning None if the queue is empty.

Inherited from:
TDequeue
final def seek(f: A => Boolean): ZSTM[Any, Nothing, A]

Drops elements from the queue while they do not satisfy the predicate, taking and returning the first element that does satisfy the predicate. Retries if no elements satisfy the predicate.

Drops elements from the queue while they do not satisfy the predicate, taking and returning the first element that does satisfy the predicate. Retries if no elements satisfy the predicate.

Inherited from:
TDequeue
def shutdown: USTM[Unit]

Shuts down the queue.

Shuts down the queue.

Inherited from:
TEnqueue
def size: USTM[Int]

The current number of values in the queue.

The current number of values in the queue.

Inherited from:
TEnqueue
def take: ZSTM[Any, Nothing, A]

Takes a value from the queue.

Takes a value from the queue.

Inherited from:
TDequeue
def takeAll: ZSTM[Any, Nothing, Chunk[A]]

Takes all the values from the queue.

Takes all the values from the queue.

Inherited from:
TDequeue
final def takeBetween(min: Int, max: Int): ZSTM[Any, Nothing, Chunk[A]]

Takes a number of elements from the queue between the specified minimum and maximum. If there are fewer than the minimum number of elements available, retries until at least the minimum number of elements have been collected.

Takes a number of elements from the queue between the specified minimum and maximum. If there are fewer than the minimum number of elements available, retries until at least the minimum number of elements have been collected.

Inherited from:
TDequeue
final def takeN(n: Int): ZSTM[Any, Nothing, Chunk[A]]

Takes the specified number of elements from the queue. If there are fewer than the specified number of elements available, it retries until they become available.

Takes the specified number of elements from the queue. If there are fewer than the specified number of elements available, it retries until they become available.

Inherited from:
TDequeue
def takeUpTo(max: Int): ZSTM[Any, Nothing, Chunk[A]]

Takes up to the specified number of values from the queue.

Takes up to the specified number of values from the queue.

Inherited from:
TDequeue