We start to have more and more IO backed datastructures that are kept "alive" by free tasks. Depending on shutdown ordering, artifacts like pthread invalid arg and friends show up in CI, and during restart of components in production. We want to avoid this as much as possible and enforce ordering of shutdown tasks.
Commonly this is done via CancellationTokens (see https://tokio.rs/tokio/topics/shutdown )