Typy související s pamětí a rozsahem

Počínaje .NET Core 2.1 obsahuje .NET řadu vzájemně propojených typů, které představují souvislou oblast libovolné paměti typu silného typu. Tady jsou některé z nich:

System.Span<T>, System.Memory<T>a jejich readonly protějšky jsou navrženy tak, aby umožňovaly vytváření algoritmů, které se vyhýbají kopírování paměti nebo přidělování na spravované haldě více, než je nutné. Vytváření (buď prostřednictvím Slice nebo jejich konstruktorů) nezahrnuje duplikování podkladových vyrovnávacích pamětí: aktualizují se pouze relevantní odkazy a posuny, které představují "zobrazení" zabalené paměti.

Poznámka

Pro starší architektury Span<T> a Memory<T> jsou k dispozici v balíčku System.Memory NuGet.

Další informace najdete v System.Buffers oboru názvů.

Práce s pamětí a rozsahem

Vzhledem k tomu, že typy související s pamětí a rozsahem se obvykle používají k ukládání dat v kanálu zpracování, je důležité, aby vývojáři při použití Span<T>a Memory<T>souvisejících typů dodržovali sadu osvědčených postupů. Tyto osvědčené postupy jsou popsané v pokynech k využití MemoryT<> a SpanT<>.

Viz také