Bagikan melalui


GC.AllocateUninitializedArray<T>(Int32, Boolean) Metode

Definisi

Mengalokasikan array saat melewati inisialisasi nol, jika memungkinkan.

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()

Jenis parameter

T

Menentukan jenis elemen array.

Parameter

length
Int32

Menentukan panjang array.

pinned
Boolean

Menentukan apakah array yang dialokasikan harus disematkan.

Mengembalikan

T[]

Objek array dengan memori yang tidak diinisialisasi.

Keterangan

Di .NET 7 dan versi yang lebih lama: Jika disematkan diatur ke true, T tidak boleh menjadi jenis referensi atau jenis yang berisi referensi objek.

Melewati inisialisasi nol adalah risiko keamanan. Array yang tidak diinisialisasi dapat berisi instans valuetype yang tidak valid atau informasi sensitif yang dibuat oleh bagian lain dari aplikasi. Kode yang beroperasi pada array yang tidak diinisialisasi harus sangat diteliti untuk memastikan bahwa data yang tidak diinisialisasi tidak pernah dibaca.

Melewati inisialisasi nol menggunakan API ini hanya memiliki manfaat performa material untuk array besar, seperti buffer beberapa kilobyte atau lebih.

Berlaku untuk