Start Debugging

Tag: performance

47 Beiträge · Seite1von5

Was ist Span<T> in C#, und wann macht es Ihren Code wirklich schneller?
Span<T> ist ein nur auf dem Stack lebender ref struct, der auf Speicher zeigt, den Sie bereits besitzen, also keine eigene Allokation hat. Es beschleunigt Code in genau drei Situationen: einen Heap-Puffer durch stackalloc ersetzen, ohne Kopieren zerteilen und enge Schleifen, in denen der JIT die Bereichsprüfungen entfernt. Überall sonst ändert es nichts, und über ein await hinweg kompiliert es nicht.
2026-06-20 csharpdotnetasync
Was ist ValueTask<T> und wann lohnt es sich?
ValueTask und ValueTask<T> sind Structs, mit denen eine asynchrone Methode ein Ergebnis zurückgeben kann, ohne bei synchronem Abschluss einen Task auf dem Heap zu allozieren. Der Gewinn ist eine Allokation weniger auf Hot Paths, die üblicherweise ohne Warten abschließen. Der Preis ist ein striktes Await-once-Kontrakt. Hier steht, was der Typ tatsächlich ist, wie er funktioniert und der enge Satz an Fällen, in denen er sich auszahlt.
Weiter