Memory<T> 構造体

定義

メモリの隣接した領域を表します。

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)

型パラメーター

T

Memory<T>の項目の種類。

継承
Memory<T>
実装

注釈

Memory<T>と同様Span<T>に、 はメモリの連続した領域を表します。 ただし、 とは異なり Span<T>Memory<T>ref 構造体ではありません。 これは、 Memory<T> マネージド ヒープに配置できるのに対し Span<T> 、 はできないことを意味します。 その結果、 Memory<T> 構造体にはインスタンスと同じ制限 Span<T> はありません。 特に次の点に違いがあります。

  • これは、クラスのフィールドとして使用できます。

  • 境界をyield越えてawait使用できます。

Memory<T>加えて、 を使用 System.ReadOnlyMemory<T> して、変更できないメモリまたは読み取り専用メモリを表すことができます。

コンストラクター

Memory<T>(T[])

指定された配列全体で新しい Memory<T> オブジェクトを作成します。

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

配列の、指定したインデックスから始まる指定した数の要素を含む新しい Memory<T> オブジェクトを作成します。

プロパティ

Empty

空の Memory<T> オブジェクトを返します。

IsEmpty

現在のインスタンスが空であるかどうかを示します。

Length

現在のインスタンス内の項目の数を取得します。

Span

現在のインスタンスのスパンを返します。

メソッド

CopyTo(Memory<T>)

Memory<T> オブジェクトの内容を、コピー先である Memory<T> オブジェクトにコピーします。

Equals(Memory<T>)

指定した Memory<T> オブジェクトが現在のオブジェクトと等しいかどうかを判断します。

Equals(Object)

指定されたオブジェクトが現在のオブジェクトと等しいかどうかを判断します。

GetHashCode()

このインスタンスのハッシュ コードを返します。

Pin()

Memory<T> オブジェクトのハンドルを作成します。

Slice(Int32)

指定したインデックスで始まる現在のメモリからスライスを形成します。

Slice(Int32, Int32)

指定したインデックスで始まる現在のメモリから指定した長さでスライスを形成します。

ToArray()

メモリの内容を新しい配列にコピーします。

ToString()

この Memory<T> オブジェクトの文字列表現を返します。

TryCopyTo(Memory<T>)

メモリの内容をコピー先である Memory<T> インスタンスにコピーします。

演算子

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

ArraySegment<T> オブジェクトから Memory<T> オブジェクトへの暗黙の型変換を定義します。

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

Memory<T> オブジェクトから ReadOnlyMemory<T> オブジェクトへの暗黙の型変換を定義します。

Implicit(T[] to Memory<T>)

配列から Memory<T> オブジェクトへの暗黙の型変換を定義します。

拡張メソッド

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

指定された要素が先頭と末尾に現れる箇所をすべて、メモリ領域から削除します。

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

読み取り専用スパンで指定された一連の要素が先頭と末尾に現れる箇所をすべて、メモリ領域から削除します。

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

指定された要素が末尾に現れる箇所をすべて、文字メモリ領域から削除します。

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

読み取り専用スパンで指定された一連の要素が末尾に現れる箇所をすべて、メモリ領域から削除します。

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

指定された要素が先頭に現れる箇所をすべて、メモリ領域から削除します。

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

読み取り専用スパンで指定された一連の要素が先頭に現れる箇所をすべて、メモリ領域から削除します。

適用対象

こちらもご覧ください