6 ms·
In .NET 11 C# async management moved to the runtime, mostly eliminating heap allocations and also bringing clean stack traces. You really only need to think abo
by mrsmrtss 6mo ago
In .NET 11 C# async management moved to the runtime, mostly eliminating heap allocations and also bringing clean stack traces. You really only need to think about ConfigureAwait(false) when building shared libraries or dealing with UI frameworks (even there you mostly don't need it).
- simonask 6mo agoYou speak in the past tense, but .NET 11 is not released yet at time of writing. Runtime-async is not the current reality.
- mrsmrtss 6mo agoTrue, it's in preview currently, but actually .NET is already very efficient with async today also - https://hez2010.github.io/async-runtimes-benchmarks-2024/ https://hez2010.github.io/async-runtimes-benchmarks-2024/ (.NET9 tested here).
- simonask 6mo agoSure, it’s really fine for what it does, but it is not significantly easier to deal with than Rust async, and remains fundamentally unsuited in several scenarios where Rust async works really well.