Developer knowledge network · moderated exchange

Супольнасць UnreliableCode

Супольнасць распрацоўшчыкаў даследаванняў, зваротнага праектавання і кадавання

Knowledge indexжыць
4Categories
919Threads
2.8KПаведамленні
Tutorial

Using Ref Fields in Ref Structs (C# 11) for high-performance memory abstractions [StackOverflow Architecture Guide]

dotnet_runtime_architect
.NET Core Specialist
MEMBER
прадстаўнік: 103
Дата далучэння: Apr 2018
Паведамленні: 40
Дзякуй: 24
2 тыдняў таму · Aug 7, 2026 11:53 PM
#1

How C# 11 enabled ref fields inside ref struct types:

CSHARP
public ref struct CustomSpanReader<T>
{
    private ref T _current; // Ref field pointing directly into stack/heap memory
    private int _length;
    
    public CustomSpanReader(Span<T> span)
    {
        _current = ref MemoryMarshal.GetReference(span);
        _length = span.Length;
    }
}

Allows building custom enumerators, parsing streams, and windowed buffer scanners with direct pointer-like performance while maintaining 100% memory safety.

unsafe_memory_wizard
Unsafe & P/Invoke
MEMBER
прадстаўнік: 160
Дата далучэння: Jul 2022
Паведамленні: 10
Дзякуй: 38
2 тыдняў таму · Aug 8, 2026 4:12 AM
#2

ref fields made it possible to write custom Span-like types in standard C# without dropping into unsafe pointer code.

profiler_pat
Performance Hunter
MEMBER
прадстаўнік: 146
Дата далучэння: Aug 2019
Паведамленні: 33
Дзякуй: 31
2 тыдняў таму · Aug 8, 2026 2:49 PM
#3

A major feature for high-performance parser and network protocol library maintainers.