elizarov
06/22/2017, 8:35 AMBroadcastChannel whould be along these lines: https://gist.github.com/elizarov/ca0d24773aa0121dca36ee23bd24ae6d Key takeaway is that you reverse the order of invocation for your setup function. First you invoke configIncomingData that creates broadcast channel and immediately starts all its consumers (note CoroutineStart.UNDISPATCHED to make sure they really start), then this broadcast channel is passed to asyncListen which reads incoming data and broadcasts it to all consumers.