What's the use-case for tokio and async ?
I know that tokio is a very (the most?) popular async runtime for Rust.
But why do I see it in places like this: https://github.com/aya-rs/aya-template/blob/main/%7B%7Bproject-name%7D%7D/src/main.rs#L73 ? Tokio is a large dependency, right? Why's it added to the sample?
AFAIK, async's use-case is quite niche. It's needed when (a) you have a lot of tasks too small to spawn threads (b) the tasks have slow operations and (c) writing a custom workload scheduler is too hard.
What's async and tokio are for? What am I missing?