GC.AllocateUninitializedArray<T>(Int32, Boolean) Yöntem
Tanım
Önemli
Bazı bilgiler ürünün ön sürümüyle ilgilidir ve sürüm öncesinde önemli değişiklikler yapılmış olabilir. Burada verilen bilgilerle ilgili olarak Microsoft açık veya zımni hiçbir garanti vermez.
Mümkünse sıfır başlatmayı atlarken bir dizi ayırır.
public static T[] AllocateUninitializedArray<T> (int length, bool pinned = false);
static member AllocateUninitializedArray : int * bool -> 'T[]
Public Shared Function AllocateUninitializedArray(Of T) (length As Integer, Optional pinned As Boolean = false) As T()
Tür Parametreleri
- T
Dizi öğesinin türünü belirtir.
Parametreler
- length
- Int32
Dizinin uzunluğunu belirtir.
- pinned
- Boolean
Ayrılan dizinin sabitlenip sabitlenmeyeceğini belirtir.
Döndürülenler
Başlatılmamış belleğe sahip bir dizi nesnesi.
Açıklamalar
.NET 7 ve önceki sürümlerinde: Sabitlenmiş true
olarak ayarlanmışsa T
bir başvuru türü veya nesne başvuruları içeren bir tür olmamalıdır.
Sıfır başlatmayı atlamak bir güvenlik riskidir. Başlatılmamış dizi geçersiz değer türü örnekleri veya uygulamanın diğer bölümleri tarafından oluşturulan hassas bilgiler içerebilir. Başlatılmamış dizilerde çalışan kod, başlatılmamış verilerin hiçbir zaman okunmadığından emin olmak için yoğun bir şekilde incelenmelidir.
Bu API kullanılarak sıfır başlatmanın atlanması, yalnızca birkaç kilobayt veya daha fazla arabellek gibi büyük diziler için malzeme performansı avantajına sahiptir.