I see examples on play site
val futurePIValue: Future[Double] = computePIAsynchronously()
val futureResult: Future[Result] = futurePIValue.map { pi =>
Ok("PI value computed: " + pi)
}
In above example `map` is a blocking call which waits for `futurePIValue` to finish.
Doc also says :
"The web client will be blocked while waiting for the response, but nothing will be blocked on the server, and server resources can be used to serve other clients."
How do I not make web client waiting and instead just return some ID immediately which they an use later to query the result?