Memory<T> Struktura
Definice
Důležité
Některé informace platí pro předběžně vydaný produkt, který se může zásadně změnit, než ho výrobce nebo autor vydá. Microsoft neposkytuje žádné záruky, výslovné ani předpokládané, týkající se zde uváděných informací.
Představuje souvislou oblast paměti.
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 položek v sadě Memory<T>.
- Dědičnost
- Implementuje
-
IEquatable<Memory<T>>
Poznámky
Podobně jako Span<T>, Memory<T>
představuje souvislou oblast paměti. Na rozdíl od Span<T>však Memory<T>
není ref strukturou. To znamená, že Memory<T>
lze umístit na spravovanou haldu, zatímco Span<T> nelze. V důsledku toho Memory<T>
struktura nemá stejná omezení jako Span<T> instance. Zejména jde o toto:
Dá se použít jako pole ve třídě.
Dá se použít napříč
await
hranicemiyield
.
Kromě Memory<T>
toho můžete použít System.ReadOnlyMemory<T> i k reprezentaci neměnné nebo jen pro čtení paměti.
Konstruktory
Memory<T>(T[]) |
Vytvoří nový Memory<T> objekt nad celou určitou maticí. |
Memory<T>(T[], Int32, Int32) |
Vytvoří nový Memory<T> objekt, který obsahuje zadaný počet prvků pole začínajícího na zadaném indexu. |
Vlastnosti
Empty |
Vrátí prázdný Memory<T> objekt. |
IsEmpty |
Určuje, jestli je aktuální instance prázdná. |
Length |
Získá počet položek v aktuální instanci. |
Span |
Vrátí rozsah z aktuální instance. |
Metody
CopyTo(Memory<T>) |
Zkopíruje obsah Memory<T> objektu do cílového Memory<T> objektu. |
Equals(Memory<T>) |
Určuje, zda se zadaný Memory<T> objekt rovná aktuálnímu objektu. |
Equals(Object) |
Určí, zda se zadaný objekt rovná aktuálnímu objektu. |
GetHashCode() |
Vrátí hodnotu hash pro tuto instanci. |
Pin() |
Vytvoří popisovač objektu Memory<T> . |
Slice(Int32) |
Vytvoří řez z aktuální paměti, která začíná na zadaném indexu. |
Slice(Int32, Int32) |
Vytvoří řez z aktuální paměti začínající na zadaném indexu pro zadanou délku. |
ToArray() |
Zkopíruje obsah z paměti do nového pole. |
ToString() |
Vrátí řetězcovou reprezentaci tohoto Memory<T> objektu. |
TryCopyTo(Memory<T>) |
Zkopíruje obsah paměti do cílové Memory<T> instance. |
Operátory
Implicit(ArraySegment<T> to Memory<T>) |
Definuje implicitní převod ArraySegment<T> objektu Memory<T> na objekt. |
Implicit(Memory<T> to ReadOnlyMemory<T>) |
Definuje implicitní převod Memory<T> objektu ReadOnlyMemory<T> na objekt. |
Implicit(T[] to Memory<T>) |
Definuje implicitní převod pole na Memory<T> objekt. |
Metody rozšíření
Trim<T>(Memory<T>, T) |
Odebere všechny počáteční a koncové výskyty zadaného prvku z oblasti paměti. |
Trim<T>(Memory<T>, ReadOnlySpan<T>) |
Odebere všechny počáteční a koncové výskyty sady prvků zadaných v rozsahu jen pro čtení z oblasti paměti. |
TrimEnd<T>(Memory<T>, T) |
Odebere všechny koncové výskyty zadaného prvku z oblasti paměti znaků. |
TrimEnd<T>(Memory<T>, ReadOnlySpan<T>) |
Odebere všechny koncové výskyty sady prvků zadaných v rozsahu jen pro čtení z oblasti paměti. |
TrimStart<T>(Memory<T>, T) |
Odebere všechny počáteční výskyty zadaného prvku z oblasti paměti. |
TrimStart<T>(Memory<T>, ReadOnlySpan<T>) |
Odebere všechny počáteční výskyty sady prvků zadaných v rozsahu jen pro čtení z oblasti paměti. |