Multicast Asynchronous Channels (original) (raw)
8.15
This provides an implementation of multicast channels, an extension ofasynchronous channels that may have multiple recievers. Unlike asynchronous channels, multicast channels have distinct “server” and “receiver” objects, since multicast channels create a one-to-many relationship.
Creates and returns a new multicast channel server.
Returns #t if v is a multicast channel, #f otherwise.
Creates a receiver asynchronous channel that receives messages from mc. The returned value is a standard asynchronous channel fromracket/async-channel, but it does not support async-channel-put. Attempting to write to a receiver channel will raise an exception.
Broadcasts v to all receivers listening to mc.