Udostępnij za pośrednictwem


Memory<T> Struktura

Definicja

Reprezentuje ciągły region pamięci.

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)

Parametry typu

T

Typ elementów w obiekcie Memory<T>.

Dziedziczenie
Memory<T>
Implementuje

Uwagi

Podobnie jak Span<T>, Memory<T> reprezentuje ciągły region pamięci. Jednak w przeciwieństwie do Span<T>metody Memory<T> nie jest strukturą ref. Oznacza to, że Memory<T> można je umieścić na zarządzanym stercie, natomiast Span<T> nie może. W związku z tym Memory<T> struktura nie ma takich samych ograniczeń jak Span<T> wystąpienie. W szczególności:

  • Może być używany jako pole w klasie.

  • Może być używany przez await granice i yield .

Oprócz Memory<T>programu można użyć System.ReadOnlyMemory<T> polecenia do reprezentowania niezmiennej lub tylko do odczytu pamięci.

Konstruktory

Memory<T>(T[])

Tworzy nowy Memory<T> obiekt w całości określonej tablicy.

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

Tworzy nowy Memory<T> obiekt zawierający określoną liczbę elementów tablicy rozpoczynających się od określonego indeksu.

Właściwości

Empty

Zwraca pusty Memory<T> obiekt.

IsEmpty

Wskazuje, czy bieżące wystąpienie jest puste.

Length

Pobiera liczbę elementów w bieżącym wystąpieniu.

Span

Zwraca zakres z bieżącego wystąpienia.

Metody

CopyTo(Memory<T>)

Kopiuje zawartość Memory<T> obiektu do obiektu docelowego Memory<T> .

Equals(Memory<T>)

Określa, czy określony Memory<T> obiekt jest równy bieżącemu obiektowi.

Equals(Object)

Określa, czy dany obiekt jest taki sam, jak bieżący obiekt.

GetHashCode()

Zwraca wartość skrótu dla tego wystąpienia.

Pin()

Tworzy uchwyt dla Memory<T> obiektu.

Slice(Int32)

Tworzy wycinkę bieżącej pamięci, która rozpoczyna się od określonego indeksu.

Slice(Int32, Int32)

Tworzy wycinkę bieżącej pamięci rozpoczynającej się od określonego indeksu dla określonej długości.

ToArray()

Kopiuje zawartość z pamięci do nowej tablicy.

ToString()

Zwraca reprezentację ciągu tego Memory<T> obiektu.

TryCopyTo(Memory<T>)

Kopiuje zawartość pamięci do wystąpienia docelowego Memory<T> .

Operatory

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

Definiuje niejawną konwersję ArraySegment<T>Memory<T> obiektu na obiekt.

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

Definiuje niejawną konwersję Memory<T>ReadOnlyMemory<T> obiektu na obiekt.

Implicit(T[] to Memory<T>)

Definiuje niejawną konwersję Memory<T> tablicy na obiekt.

Metody rozszerzania

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

Usuwa wszystkie wiodące i końcowe wystąpienia określonego elementu z regionu pamięci.

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

Usuwa wszystkie wiodące i końcowe wystąpienia zestawu elementów określonych w zakresie tylko do odczytu z regionu pamięci.

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

Usuwa wszystkie końcowe wystąpienia określonego elementu z regionu pamięci znaków.

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

Usuwa wszystkie końcowe wystąpienia zestawu elementów określonych w zakresie tylko do odczytu z regionu pamięci.

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

Usuwa wszystkie wiodące wystąpienia określonego elementu z regionu pamięci.

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

Usuwa wszystkie wiodące wystąpienia zestawu elementów określonych w zakresie tylko do odczytu z regionu pamięci.

Dotyczy

Zobacz też