Aracılığıyla paylaş


ReadOnlyTensorSpan<T> Yapı

Tanım

ReadOnlyTensorSpan, rastgele belleğin bitişik bir bölgesini temsil eder. Dizilerden farklı olarak, yönetilen veya yerel belleğe veya yığında ayrılan belleğe işaret edebilir. Tür ve bellek açısından güvenlidir.

generic <typename T>
public value class ReadOnlyTensorSpan
[System.Diagnostics.CodeAnalysis.Experimental("SYSLIB5001", UrlFormat="https://aka.ms/dotnet-warnings/{0}")]
public readonly ref struct ReadOnlyTensorSpan<T>
[<System.Diagnostics.CodeAnalysis.Experimental("SYSLIB5001", UrlFormat="https://aka.ms/dotnet-warnings/{0}")>]
type ReadOnlyTensorSpan<'T> = struct
Public Structure ReadOnlyTensorSpan(Of T)

Tür Parametreleri

T
Devralma
ReadOnlyTensorSpan<T>
Öznitelikler

Oluşturucular

ReadOnlyTensorSpan<T>(Array)

Sağlanan Arrayüzerinde yeni bir ReadOnlyTensorSpan<T> oluşturur. Yeni ReadOnlyTensorSpan<T> 1 derecesine ve sağlanan Arrayuzunluğuna eşit bir uzunluğa sahip olur.

ReadOnlyTensorSpan<T>(Array, ReadOnlySpan<Int32>, ReadOnlySpan<IntPtr>, ReadOnlySpan<IntPtr>)

Belirtilen başlangıç uzaklıklarını, uzunluklarını ve adımlarını kullanarak sağlanan Array üzerinde yeni bir ReadOnlyTensorSpan<T> oluşturur. Adımlar sağlanmazsa otomatik olarak hesaplanır.

ReadOnlyTensorSpan<T>(Array, ReadOnlySpan<NIndex>, ReadOnlySpan<IntPtr>, ReadOnlySpan<IntPtr>)

Belirtilen başlangıç uzaklıklarını, uzunluklarını ve adımlarını kullanarak sağlanan Array üzerinde yeni bir ReadOnlyTensorSpan<T> oluşturur. Adımlar sağlanmazsa otomatik olarak hesaplanır.

ReadOnlyTensorSpan<T>(ReadOnlySpan<T>)

Sağlanan ReadOnlySpan<T>üzerinde yeni bir ReadOnlyTensorSpan<T> oluşturur. Yeni ReadOnlyTensorSpan<T> 1 derecesine ve sağlanan ReadOnlySpan<T>uzunluğuna eşit bir uzunluğa sahip olur.

ReadOnlyTensorSpan<T>(ReadOnlySpan<T>, ReadOnlySpan<IntPtr>, ReadOnlySpan<IntPtr>)

Belirtilen uzunlukları ve adımları kullanarak sağlanan Span<T> üzerinde yeni bir ReadOnlyTensorSpan<T> oluşturur. Adımlar sağlanmazsa otomatik olarak hesaplanır.

ReadOnlyTensorSpan<T>(T*, IntPtr)

Hedef yönetilmeyen arabellek üzerinde yeni bir yayılma alanı oluşturur. Açıkçası bu, uzunluğun kontrol edilmemesi oldukça tehlikelidir. Ancak bu oluşturma işlemi doğruysa, sonraki tüm kullanımlar doğru olur.

ReadOnlyTensorSpan<T>(T*, IntPtr, ReadOnlySpan<IntPtr>, ReadOnlySpan<IntPtr>)

Hedef yönetilmeyen arabellek üzerinde yeni bir yayılma alanı oluşturur. Açıkçası bu oldukça tehlikelidir, çünkü uzunluk kontrol edilmez. Ancak bu oluşturma işlemi doğruysa, sonraki tüm kullanımlar doğru olur.

ReadOnlyTensorSpan<T>(T[])

Hedef dizinin tamamı boyunca yeni bir yayılma alanı oluşturur.

ReadOnlyTensorSpan<T>(T[], Index, ReadOnlySpan<IntPtr>, ReadOnlySpan<IntPtr>)

Hedef dizinin 'start' dizininden başlayıp 'end' dizininde (hariç) biten bölümü üzerinde yeni bir yayılma alanı oluşturur.

ReadOnlyTensorSpan<T>(T[], Int32, ReadOnlySpan<IntPtr>, ReadOnlySpan<IntPtr>)

Hedef dizinin 'start' dizininden başlayıp 'end' dizininde (hariç) biten bölümü üzerinde yeni bir yayılma alanı oluşturur.

Özellikler

Empty

Tabanı null işaretçi olan 0 uzunluklu salt okunur bir yayılma döndürür.

FlattenedLength

Yayılma alanı içindeki öğe sayısı.

IsEmpty

Bu TensorSpan<T> boş olup olmadığını gösteren bir değer alır.

Item[ReadOnlySpan<IntPtr>]

ReadOnlyTensorSpan öğesinin belirtilen öğesine başvuru döndürür.

Item[ReadOnlySpan<NIndex>]

ReadOnlyTensorSpan öğesinin belirtilen öğesine başvuru döndürür.

Item[ReadOnlySpan<NRange>]

ReadOnlyTensorSpan'ın bir dilimini döndürür.

Lengths

Bu TensorSpan<T>her boyutun uzunluğunu alır.

Rank

Bu TensorSpan<T>derecesini( diğer adıyla boyut sayısını) alır.

Strides

Bu TensorSpan<T> adımlarını alır

Yöntemler

CastUp<TDerived>(ReadOnlyTensorSpan<TDerived>)

TDerived salt okunur bir aralığını Tsalt okunur bir yayılmasına yayınlar.

CopyTo(TensorSpan<T>)

Bu salt okunur yayılma alanının içeriğini hedef yayılma alanına kopyalar. Kaynak ve hedefler çakışıyorsa, bu yöntem hedef üzerine yazılmadan önce geçici bir konumdaki özgün değerlerin gibi davranır.

Equals(Object)
Geçersiz.

Bu yöntem, span'lar kutulanamadığı için desteklenmez. İki aralığı karşılaştırmak için operator== kullanın.

FlattenTo(Span<T>)

Bu yayılma alanının içeriğini sağlanan Span<T>düzleştirir.

GetEnumerator()

Bu yayılma alanı için bir numaralandırıcı alır.

GetHashCode()
Geçersiz.

Bu yöntem, span'lar kutulanamadığı için desteklenmez.

GetPinnableReference()

ReadOnlyTensorSpan öğesinin 0. öğesine başvuru döndürür. ReadOnlyTensorSpan boşsa null başvuru döndürür. Sabitleme için kullanılabilir ve sabit bir deyim içinde span kullanımını desteklemek için gereklidir.

Slice(ReadOnlySpan<NIndex>)

TensorSpan'ın belirtilen öğesine başvuru döndürür.

Slice(ReadOnlySpan<NRange>)

Verilen aralığın dışında bir dilim oluşturur

ToString()

Türün adını ve öğe sayısını içeren bir String döndürür.

TryCopyTo(TensorSpan<T>)

Bu salt okunur yayılma alanının içeriğini hedef yayılma alanına kopyalar. Kaynak ve hedefler çakışıyorsa, bu yöntem hedef üzerine yazılmadan önce geçici bir konumdaki özgün değerlerin gibi davranır.

TryFlattenTo(Span<T>)

Bu yayılma alanının içeriğini sağlanan Span<T>düzleştirir.

İşleçler

Equality(ReadOnlyTensorSpan<T>, ReadOnlyTensorSpan<T>)

Aynı bellekte sol ve sağ nokta varsa ve aynı uzunluktaysa true döndürür. Bunun içeriğinin eşit olup olmadığını denetlemediğini unutmayın.

Implicit(T[] to ReadOnlyTensorSpan<T>)

ReadOnlyTensorSpan, rastgele belleğin bitişik bir bölgesini temsil eder. Dizilerden farklı olarak, yönetilen veya yerel belleğe veya yığında ayrılan belleğe işaret edebilir. Tür ve bellek açısından güvenlidir.

Inequality(ReadOnlyTensorSpan<T>, ReadOnlyTensorSpan<T>)

Aynı bellekte sol ve sağ nokta varsa ve aynı uzunluktaysa false döndürür. Bunun içeriğinin eşit olup olmadığını denetlemediğini unutmayın.

Uzantı Metotları

BroadcastTo<T>(ReadOnlyTensorSpan<T>, TensorSpan<T>)

verileri source'den destination'e yayınlar.

Reshape<T>(ReadOnlyTensorSpan<T>, ReadOnlySpan<IntPtr>)

tensor tensor'ını belirtilen lengthsyeniden şekillendirer. Uzunluklardan biri -1 ise, otomatik olarak hesaplanır. Temel alınan belleğin uzunluğunu değiştirmez veya yeni bellek ayırmaz. Yeni şekil eski şekille uyumlu değilse bir özel durum oluşur.

SequenceEqual<T>(ReadOnlyTensorSpan<T>, ReadOnlyTensorSpan<T>)

IEquatable{T} kullanarak öğeleri karşılaştırarak iki dizinin eşit olup olmadığını belirler. Eşittir(T).

Squeeze<T>(ReadOnlyTensorSpan<T>)

bir uzunluğundaki tüm boyutları tensorkaldırır.

SqueezeDimension<T>(ReadOnlyTensorSpan<T>, Int32)

Verilen dimensioniçin tensor bir uzunluk eksenini kaldırır. Boyut bir uzunluk değilse bir özel durum oluşturur.

ToString<T>(ReadOnlyTensorSpan<T>, ReadOnlySpan<IntPtr>)

ReadOnlyTensorSpan<T> String bir gösterimi oluşturur." />

TryBroadcastTo<T>(ReadOnlyTensorSpan<T>, TensorSpan<T>)

verileri tensordestination ile uyumlu en küçük yayınlanabilir şekle yayınlayın ve destination Şekiller uyumlu değilse false döndürülür.

Unsqueeze<T>(ReadOnlyTensorSpan<T>, Int32)

Boyut konumunda görünecek 1 uzunluğunda yeni bir boyut ekleyin.

Şunlara uygulanır