pub fn block_on<F: Future>(fut: F) -> F::Output
Expand description
Run a future to completion using a busy loop.
This calls .poll()
on the future in a busy loop, which blocks
the current thread at 100% cpu usage until the future is done. The
future’s Waker
mechanism is not used.
You can use this to run multiple futures concurrently with join
.
It’s suitable for systems with no or limited concurrency and without
strict requirements around power consumption. For more complex use
cases, prefer using a “real” executor like embassy-executor
, which
supports multiple tasks, and putting the core to sleep when no task
needs to do work.