csharp / expert
Snippet
Speichersicheres String-Slicing via ReadOnlySpan
Die Verwendung von ReadOnlySpan<char> ermöglicht eine hochperformante String-Manipulation, indem direkt auf vorhandenen Speicher verwiesen wird. Dies eliminiert Heap-Allokationen beim Slicing, was für Systeme mit geringer Latenz und hohem Datendurchsatz entscheidend ist.
snippet.cs
csharp
1
2
3
4
5
6
7
8
9
10
11
12
13
public void ParsePayload(string data){// Avoids creating a new string object on the heapReadOnlySpan<char> span = data.AsSpan();int start = data.IndexOf(':') + 1;ReadOnlySpan<char> segment = span.Slice(start, 5);if (segment.SequenceEqual("DEBUG")){EnableVerboseLogging();}}
Erklärung
1
data.AsSpan()
Erzeugt eine Value-Type-Ansicht auf den String, ohne Daten zu kopieren.
2
span.Slice(start, 5)
Erzeugt eine Teilansicht des ursprünglichen Speicherfensters.