Memóriával és átfedéssel kapcsolatos típusok

A .NET Core 2.1-től kezdve a .NET számos egymáshoz kapcsolódó típust tartalmaz, amelyek tetszőleges memória összefüggő, erősen típusos régióját jelölik. Ezek a következők:

System.Span<T>, System.Memory<T>és a megfelelőiket úgy tervezték, hogy lehetővé tegyék olyan algoritmusok létrehozását, amelyek a szükségesnél több memóriát másolnak vagy lefoglalnak a felügyelt halomra. A létrehozásuk (akár a konstruktorokon keresztül, akár a konstruktorokon keresztül Slice ) nem jár az alapul szolgáló pufferek duplikálásával: csak a megfelelő hivatkozások és eltolások frissülnek, amelyek a burkolt memória "nézetét" képviselik.

Megjegyzés

A korábbi keretrendszerekhez, Span<T> és Memory<T> a System.Memory NuGet csomagban érhetők el.

További információt a névtérben System.Buffers talál.

Memória és időtartam használata

Mivel a memóriával és az átfedéssel kapcsolatos típusokat általában feldolgozási folyamatokban tárolják, fontos, hogy a fejlesztők az ajánlott eljárásokat követve használják Span<T>a , Memory<T>és a kapcsolódó típusokat. Ezeket az ajánlott eljárásokat a MemoryT<> és a SpanT>< használati irányelvei dokumentálják.

Lásd még