Memory<T> Estrutura
Definição
Importante
Algumas informações se referem a produtos de pré-lançamento que podem ser substancialmente modificados antes do lançamento. A Microsoft não oferece garantias, expressas ou implícitas, das informações aqui fornecidas.
Representa uma região contígua da memória.
generic <typename T>
public value class Memory : IEquatable<Memory<T>>
generic <typename T>
public value class Memory
public readonly struct Memory<T> : IEquatable<Memory<T>>
public readonly struct Memory<T>
type Memory<'T> = struct
Public Structure Memory(Of T)
Implements IEquatable(Of Memory(Of T))
Public Structure Memory(Of T)
Parâmetros de tipo
- T
O tipo de itens no Memory<T>.
- Herança
- Implementações
-
IEquatable<Memory<T>>
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 eyield
.
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. |