Memory<T> Struktura

Definicja

Reprezentuje ciągły region pamięci.Represents a contiguous region of memory.

generic <typename T>
public value class Memory : IEquatable<Memory<T>>
public struct Memory<T> : IEquatable<Memory<T>>
type Memory<'T> = struct
Public Structure Memory(Of T)
Implements IEquatable(Of Memory(Of T))

Parametry typu

T

Typ elementów w Memory<T>.The type of items in the Memory<T>.

Dziedziczenie
Memory<T>
Implementuje

Uwagi

Podobnie jak Span<T>, Memory<T> reprezentuje ciągły region pamięci.Like Span<T>, Memory<T> represents a contiguous region of memory. Jednak w przeciwieństwie do Span<T>, Memory<T> nie jest strukturą ref.Unlike Span<T>, however, Memory<T> is not a ref struct. Oznacza to, że Memory<T> mogą być umieszczane na zarządzanym stosie, podczas gdy Span<T> nie może.This means that Memory<T> can be placed on the managed heap, whereas Span<T> cannot. W związku z tym struktura Memory<T> nie ma takich samych ograniczeń jak wystąpienie Span<T>.As a result, the Memory<T> structure does not have the same restrictions as a Span<T> instance. W szczególności:In particular:

  • Może służyć jako pole w klasie.It can be used as a field in a class.

  • Może być używany w granicach await i yield.It can be used across await and yield boundaries.

Oprócz Memory<T> można użyć System.ReadOnlyMemory<T> do reprezentowania niezmiennego lub tylko do odczytu pamięci.In addition to Memory<T>, you can use System.ReadOnlyMemory<T> to represent immutable or read-only memory.

Konstruktory

Memory<T>(T[])

Tworzy nowy obiekt Memory<T> w całości dla określonej tablicy.Creates a new Memory<T> object over the entirety of a specified array.

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

Tworzy nowy obiekt Memory<T> zawierający określoną liczbę elementów tablicy, zaczynając od określonego indeksu.Creates a new Memory<T> object that includes a specified number of elements of an array beginning at a specified index.

Właściwości

Empty

Zwraca pusty obiekt Memory<T>.Returns an empty Memory<T> object.

IsEmpty

Wskazuje, czy bieżące wystąpienie jest puste.Indicates whether the current instance is empty.

Length

Pobiera liczbę elementów w bieżącym wystąpieniu.Gets the number of items in the current instance.

Span

Zwraca zakres z bieżącego wystąpienia.Returns a span from the current instance.

Metody

CopyTo(Memory<T>)

Kopiuje zawartość obiektu Memory<T> do docelowego obiektu Memory<T>.Copies the contents of a Memory<T> object into a destination Memory<T> object.

Equals(Memory<T>)

Określa, czy określony obiekt Memory<T> jest równy bieżącemu obiektowi.Determines whether the specified Memory<T> object is equal to the current object.

Equals(Object)

Określa, czy określony obiekt jest równy bieżącemu obiektowi.Determines whether the specified object is equal to the current object.

GetHashCode()

Zwraca kod skrótu dla tego wystąpienia.Returns the hash code for this instance.

Pin()

Tworzy dojście dla obiektu Memory<T>.Creates a handle for the Memory<T> object.

Slice(Int32)

Tworzy wycink z bieżącej pamięci, zaczynając od określonego indeksu.Forms a slice out of the current memory that begins at a specified index.

Slice(Int32, Int32)

Tworzy wycink poza bieżącą pamięć, rozpoczynając od określonego indeksu przez określoną długość.Forms a slice out of the current memory starting at a specified index for a specified length.

ToArray()

Kopiuje zawartość z pamięci do nowej tablicy.Copies the contents from the memory into a new array.

ToString()

Zwraca reprezentację ciągu tego obiektu Memory<T>.Returns the string representation of this Memory<T> object.

TryCopyTo(Memory<T>)

Kopiuje zawartość pamięci do wystąpienia Memory<T> docelowego.Copies the contents of the memory into a destination Memory<T> instance.

Operatory

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

Definiuje niejawną konwersję obiektu ArraySegment<T> do obiektu Memory<T>.Defines an implicit conversion of an ArraySegment<T> object to a Memory<T> object.

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

Definiuje niejawną konwersję obiektu Memory<T> do obiektu ReadOnlyMemory<T>.Defines an implicit conversion of a Memory<T> object to a ReadOnlyMemory<T> object.

Implicit(T[] to Memory<T>)

Definiuje niejawną konwersję tablicy do obiektu Memory<T>.Defines an implicit conversion of an array to a Memory<T> object.

Metody rozszerzania

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

Usuwa wszystkie wystąpienia wiodące i końcowe określonego elementu z regionu pamięci.Removes all leading and trailing occurrences of a specified element from a memory region.

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

Usuwa wszystkie początkowe i końcowe wystąpienia zestawu elementów określonych w zakresie tylko do odczytu z regionu pamięci.Removes all leading and trailing occurrences of a set of elements specified in a read-only span from a memory region.

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

Usuwa wszystkie końcowe wystąpienia określonego elementu z obszaru pamięci znaku.Removes all trailing occurrences of a specified element from a character memory region.

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

Usuwa wszystkie końcowe wystąpienia zestawu elementów określone w ramach obszaru pamięci tylko do odczytu.Removes all trailing occurrences of a set of elements specified in a read-only span from a memory region.

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

Usuwa wszystkie wiodące wystąpienia określonego elementu z regionu pamięci.Removes all leading occurrences of a specified element from a memory region.

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

Usuwa wszystkie wiodące wystąpienia zestawu elementów określonego w ramach obszaru pamięci tylko do odczytu.Removes all leading occurrences of a set of elements specified in a read-only span from a memory region.

Dotyczy