666 B
666 B
Add tokio-style broadcast channels as a solution for #204 and discussed thoroughly in trio/#987.
This gives us local task broadcast functionality using a new BroadcastReceiver
type which can wrap trio.ReceiveChannel
and provide fan-out copies of a stream of data to every subscribed consumer. We use this new machinery to provide a ReceiveMsgStream.subscribe()
async context manager which can be used by actor-local concumers tasks to easily pull from a shared and dynamic IPC stream.