GC.AllocateUninitializedArray<T>(Int32, Boolean) Yöntem
Ö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
Dizi öğesinin türünü belirtir.
- length
- Int32
Dizinin uzunluğunu belirtir.
- pinned
- Boolean
Ayrılan dizinin sabitlenip sabitlenmeyeceğini belirtir.
Başlatılmamış belleğe sahip bir dizi nesnesi.
.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.
Ürün | Sürümler |
---|---|
.NET | 5, 6, 7, 8, 9, 10 |
.NET geri bildirimi
.NET, açık kaynak bir projedir. Geri bildirim sağlamak için bir bağlantı seçin: