Comment by amelius

1 year ago

Yes, async is easier, but granularity of performance is a real downside. The CPU is a resource too, and needs to be managed more carefully than async can do. There's a reason why people stopped using cooperative multitasking like in Windows 3.1 ...

Sure, but that’s not really an argument for or against async but for or against different runtime policies.

  • What good are "runtime policies" if you're in a single thread that you can't interrupt (which is what async is)?

    • Async is not really that in Rust. While it's true that a singular poll cannot be preempted, things like task::spawn schedule that on a multi threaded executor. So a lot of cases behave just like threads except you await them from somewhere else.