Ler em inglês

Compartilhar via


Memory<T> Estrutura

Definição

Representa uma região contígua da memória.

public readonly struct Memory<T> : IEquatable<Memory<T>>
public readonly struct Memory<T>

Parâmetros de tipo

T

O tipo de itens no Memory<T>.

Herança
Memory<T>
Implementações

Comentários

Como Span<T>, Memory<T> representa uma região contígua de memória. Ao contrário Span<T>de , no entanto, Memory<T> não é um struct ref. Isso significa que Memory<T> isso pode ser colocado no heap gerenciado, enquanto Span<T> que não pode. Como resultado, a Memory<T> estrutura não tem as mesmas restrições que uma Span<T> instância. Especialmente:

  • Ele pode ser usado como um campo em uma classe.

  • Ele pode ser usado entre await limites e yield .

Além de Memory<T>, você pode usar System.ReadOnlyMemory<T> para representar memória imutável ou somente leitura.

Construtores

Memory<T>(T[])

Cria um novo objeto Memory<T> sobre a totalidade de uma matriz especificada.

Memory<T>(T[], Int32, Int32)

Cria um novo objeto Memory<T> que inclui um número especificado de elementos de uma matriz, começando em um índice especificado.

Propriedades

Empty

Retorna um objeto Memory<T> vazio.

IsEmpty

Indica se a instância atual está vazia.

Length

Obtém o número de itens na instância atual.

Span

Retorna uma extensão da instância atual.

Métodos

CopyTo(Memory<T>)

Copia o conteúdo de um objeto Memory<T> para um objeto Memory<T> de destino.

Equals(Memory<T>)

Determina se o objeto Memory<T> especificado é igual ao objeto atual.

Equals(Object)

Determina se o objeto especificado é igual ao objeto atual.

GetHashCode()

Retorna o código hash para a instância.

Pin()

Cria um identificador para o objeto Memory<T>.

Slice(Int32)

Forma uma fatia com base na memória atual que começa em um índice especificado.

Slice(Int32, Int32)

Forma uma fatia com base na memória atual que começa em um índice especificado para um tamanho especificado.

ToArray()

Copia o conteúdo da memória para uma nova matriz.

ToString()

Retorna a representação de cadeia de caracteres desse objeto Memory<T>.

TryCopyTo(Memory<T>)

Copia o conteúdo da memória para uma instância Memory<T> de destino.

Operadores

Implicit(ArraySegment<T> to Memory<T>)

Define uma conversão implícita de um objeto ArraySegment<T> para um objeto Memory<T>.

Implicit(Memory<T> to ReadOnlyMemory<T>)

Define uma conversão implícita de um objeto Memory<T> como um objeto ReadOnlyMemory<T>.

Implicit(T[] to Memory<T>)

Define uma conversão implícita de uma matriz para um objeto Memory<T>.

Métodos de Extensão

Trim<T>(Memory<T>, T)

Remove todas as ocorrências à esquerda e à direita de um elemento especificado de uma região de memória.

Trim<T>(Memory<T>, ReadOnlySpan<T>)

Remove todas as ocorrências à esquerda e à direita de um conjunto de elementos especificados em um intervalo somente leitura de uma região de memória.

TrimEnd<T>(Memory<T>, T)

Remove todas as ocorrências à direita de um elemento especificado de uma região de memória de caracteres.

TrimEnd<T>(Memory<T>, ReadOnlySpan<T>)

Remove todas as ocorrências à direita de um conjunto de elementos especificados em um intervalo somente leitura de uma região de memória.

TrimStart<T>(Memory<T>, T)

Remove todas as ocorrências à esquerda de um elemento especificado de uma região de memória.

TrimStart<T>(Memory<T>, ReadOnlySpan<T>)

Remove todas as ocorrências à esquerda de um conjunto de elementos especificados em um intervalo somente leitura de uma região de memória.

Aplica-se a

Produto Versões
.NET Core 2.1, Core 2.2, Core 3.0, Core 3.1, 5, 6, 7, 8, 9
.NET Standard 2.0, 2.1

Confira também