Or maybe each coroutine that does a request should...
# coroutines
c
Or maybe each coroutine that does a request should provide the channel over which it should get the reply? Like:
Copy code
// I want to request ID 12
val results = Channel<Int, Channel<Result>>()
cacheManager.send(12, results)
val result: Result = results.receive()
Maybe this is where Flows would be useful?