withValue

fun withValue(action: (T) -> Unit): Any

Ensure the given action will run with the result of the computation. If this is the first request for this future, launch a task to run the computation, evaluating all waiters when complete. If the value has not yet been computed, add the action to the waiters. If the value has been computed, just run the action. Note that all evaluation takes place while interpreters may run.