İngilizce dilinde oku

Aracılığıyla paylaş


Memory<T> Yapı

Tanım

Belleğin bitişik bölgesini temsil eder.

C#
public readonly struct Memory<T> : IEquatable<Memory<T>>
C#
public readonly struct Memory<T>

Tür Parametreleri

T

içindeki Memory<T>öğelerin türü.

Devralma
Memory<T>
Uygulamalar

Açıklamalar

gibi Span<T>, Memory<T> belleğin bitişik bir bölgesini temsil eder. Span<T>Ancak, aksine, Memory<T> bir başvuru yapısı değildir. Bu, Memory<T> yönetilen yığına yerleştirilebileceği, ancak Span<T> yerleştirilemeyeceği anlamına gelir. Sonuç olarak, Memory<T> yapı bir Span<T> örnekle aynı kısıtlamalara sahip değildir. Özellikle:

  • Bir sınıfta alan olarak kullanılabilir.

  • Ve sınırları boyunca awaityield kullanılabilir.

'a Memory<T>ek olarak, sabit veya salt okunur belleği temsil etmek için kullanabilirsiniz System.ReadOnlyMemory<T> .

Oluşturucular

Memory<T>(T[])

Belirtilen dizinin tamamı üzerinde yeni Memory<T> bir nesne oluşturur.

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

Belirtilen dizinden başlayan bir dizinin belirtilen sayıda öğesini içeren yeni Memory<T> bir nesne oluşturur.

Özellikler

Empty

Boş Memory<T> bir nesne döndürür.

IsEmpty

Geçerli örneğin boş olup olmadığını gösterir.

Length

Geçerli örnekteki öğe sayısını alır.

Span

Geçerli örnekten bir span döndürür.

Yöntemler

CopyTo(Memory<T>)

Bir Memory<T> nesnenin içeriğini hedef Memory<T> nesneye kopyalar.

Equals(Memory<T>)

Belirtilen Memory<T> nesnenin geçerli nesneye eşit olup olmadığını belirler.

Equals(Object)

Belirtilen nesnenin geçerli nesneye eşit olup olmadığını belirler.

GetHashCode()

Bu örneğe ilişkin karma kodu döndürür.

Pin()

Nesne için bir tanıtıcı Memory<T> oluşturur.

Slice(Int32)

Belirtilen dizinde başlayan geçerli bellekten bir dilim oluşturur.

Slice(Int32, Int32)

Belirtilen uzunlukta belirtilen dizinden başlayarak geçerli bellekten bir dilim oluşturur.

ToArray()

İçeriği bellekten yeni bir diziye kopyalar.

ToString()

Bu Memory<T> nesnenin dize gösterimini döndürür.

TryCopyTo(Memory<T>)

Belleğin içeriğini hedef Memory<T> örneğe kopyalar.

İşleçler

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

Bir nesnenin nesneye örtük bir ArraySegment<T>Memory<T> dönüştürmesini tanımlar.

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

Bir nesnenin nesneye örtük bir Memory<T>ReadOnlyMemory<T> dönüştürmesini tanımlar.

Implicit(T[] to Memory<T>)

Bir dizinin nesneye örtük bir Memory<T> dönüştürmesini tanımlar.

Uzantı Metotları

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

Belirtilen bir öğenin bellek bölgesinden tüm baştaki ve sondaki oluşumlarını kaldırır.

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

Bir bellek bölgesinden salt okunur bir yayılma alanında belirtilen bir öğe kümesinin tüm baştaki ve sondaki oluşumlarını kaldırır.

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

Belirtilen bir öğenin karakter bellek bölgesinden sondaki tüm oluşumlarını kaldırır.

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

Bir bellek bölgesinden salt okunur bir yayılma alanında belirtilen bir öğe kümesinin sonundaki tüm oluşumları kaldırır.

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

Belirtilen bir öğenin bellek bölgesinden tüm baştaki oluşumlarını kaldırır.

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

Bir bellek bölgesinden salt okunur bir yayılma alanında belirtilen bir öğe kümesinin tüm baştaki oluşumlarını kaldırır.

Şunlara uygulanır

Ürün Sürümler
.NET Core 2.1, Core 2.2, Core 3.0, Core 3.1, 5, 6, 7, 8, 9
.NET Standard 2.0, 2.1

Ayrıca bkz.