flix

0.56.0

Channel

Definitions

def buffered(n: Int32): (Sender[t], Receiver[t]) \ Chan Source

Returns a new buffered channel with capacity for n elements.

def recv(receiver: Receiver[t]): t \ Chan + NonDet Source

Receives a message from the given channel r.

Blocks until a message is dequeued.

def send(m: t, sender: Sender[t]): Unit \ Chan Source

Sends the message m on the given channel s.

Blocks until the message is enqueued.

def timeout(d: Duration): Receiver[Unit] \ Chan + IO Source

Returns a channel that receives the Unit message after duration d.

def unbuffered(): (Sender[t], Receiver[t]) \ Chan Source

Returns a new unbuffered channel (i.e. a channel with zero capacity).