Condividi tramite


Memory<T> Struct

Definizione

Rappresenta una regione contigua di memoria.

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)

Parametri di tipo

T

Tipo di elementi nell'oggetto Memory<T>.

Ereditarietà
Memory<T>
Implementazioni

Commenti

Come Span<T>, Memory<T> rappresenta un'area contigua di memoria. A differenza Span<T>di , tuttavia, Memory<T> non è uno struct di riferimento. Ciò significa che Memory<T> può essere inserito nell'heap gestito, mentre Span<T> non può. Di conseguenza, la Memory<T> struttura non ha le stesse restrizioni di un'istanza Span<T> . In particolare:

  • Può essere usato come campo in una classe.

  • Può essere usato attraverso await e yield limiti.

Oltre a Memory<T>, è possibile usare System.ReadOnlyMemory<T> per rappresentare memoria non modificabile o di sola lettura.

Costruttori

Memory<T>(T[])

Crea un nuovo oggetto Memory<T> sull'intera matrice specificata.

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

Crea un nuovo oggetto Memory<T> che include un numero specificato di elementi di una matrice che iniziano in corrispondenza di un indice specificato.

Proprietà

Empty

Restituisce un oggetto Memory<T> vuoto.

IsEmpty

Indica se l'istanza corrente è vuota.

Length

Ottiene il numero di elementi nell'istanza corrente.

Span

Restituisce un intervallo dall'istanza corrente.

Metodi

CopyTo(Memory<T>)

Copia il contenuto di un oggetto Memory<T> in un oggetto Memory<T> di destinazione.

Equals(Memory<T>)

Determina se l'oggetto Memory<T> specificato è uguale all'oggetto corrente.

Equals(Object)

Determina se l'oggetto specificato è uguale all'oggetto corrente.

GetHashCode()

Restituisce il codice hash per l'istanza.

Pin()

Crea un handle per l'oggetto Memory<T>.

Slice(Int32)

Crea una sezione dalla memoria corrente che inizia in corrispondenza di un indice specificato.

Slice(Int32, Int32)

Crea una sezione dalla memoria corrente che inizia in corrispondenza di un indice specificato per una lunghezza specificata.

ToArray()

Copia il contenuto dalla memoria in una nuova matrice.

ToString()

Restituisce la rappresentazione di stringa dell'oggetto Memory<T>.

TryCopyTo(Memory<T>)

Copia il contenuto della memoria in un'istanza Memory<T> di destinazione.

Operatori

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

Definisce una conversione implicita di un oggetto ArraySegment<T> in un oggetto Memory<T>.

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

Definisce una conversione implicita di un oggetto Memory<T> in un oggetto ReadOnlyMemory<T>.

Implicit(T[] to Memory<T>)

Definisce una conversione implicita di una matrice in un oggetto Memory<T>.

Metodi di estensione

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

Rimuove tutte le occorrenze iniziali e finali di un elemento specificato da un'area di memoria.

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

Rimuove tutte le occorrenze iniziali e finali di un set di elementi specificato in un intervallo di sola lettura da un'area di memoria.

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

Rimuove tutte le occorrenze finali di un elemento specificato da un'area di memoria dei caratteri.

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

Rimuove tutte le occorrenze finali di un set di elementi specificato in un intervallo di sola lettura da un'area di memoria.

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

Rimuove tutte le occorrenze iniziali di un elemento specificato da un'area di memoria.

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

Rimuove tutte le occorrenze iniziali di un set di elementi specificato in un intervallo di sola lettura da un'area di memoria.

Si applica a

Vedi anche