Tipos relacionados com memória e vão

Começando por .NET Core 2.1, .NET inclui uma série de tipos interrelacionados que representam uma região contígua e fortemente dactilografada de memória arbitrária. Incluem-se:

System.Span<T>, System.Memory<T>e as suas congéneres são projetadas para permitir a criação de algoritmos que evitem copiar memória ou atribuir na pilha gerida mais do que o necessário. A sua criação (através Slice ou dos seus construtores) não implica a duplicação dos amortecedores subjacentes: apenas as referências e compensações relevantes, que representam a "visão" da memória embrulhada, são atualizadas.

Nota

Para estruturas anteriores, Span<T> e estão Memory<T> disponíveis no pacote System.Memory NuGet.

Para mais informações, consulte o espaço de System.Buffers nomes.

Trabalhar com memória e vão

Como os tipos relacionados com a memória e o vão são normalmente utilizados para armazenar dados num pipeline de processamento, é importante que os desenvolvedores sigam um conjunto de boas práticas ao utilizarem Span<T>, Memory<T>e tipos relacionados. Estas boas práticas estão documentadas nas diretrizes de utilização MemoryT<> e SpanT<>.

Ver também