 operations are asynchronous and represented by
futures. These futures, representing the application logic, are scheduled by
an executor (see <a href="https://tokio.rs/docs/getting-started/runtime-model/">runtime model</a> for more details). Executors wait for
notifications before scheduling the future for execution time, i.e., nothing
happens until an event is received indicating that the task can make
progress.</p>
<p>The reactor receives events from the operating system and notifies the
executor.</p>
<p>