pub fn block_on<T>(future: impl Future<Output = T>) -> T
Run a future to completion, sleeping the thread if there is no progress that can be made.