GC.AllocateUninitializedArray<T>(Int32, Boolean) Metoda
Definicja
Ważne
Niektóre informacje odnoszą się do produktu w wersji wstępnej, który może zostać znacząco zmodyfikowany przed wydaniem. Firma Microsoft nie udziela żadnych gwarancji, jawnych lub domniemanych, w odniesieniu do informacji podanych w tym miejscu.
Przydziela tablicę, pomijając inicjowanie zerowe, jeśli to możliwe.
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()
Parametry typu
- T
Określa typ elementu tablicy.
Parametry
- length
- Int32
Określa długość tablicy.
- pinned
- Boolean
Określa, czy przydzielona tablica musi być przypięta.
Zwraca
Obiekt tablicy z niezainicjowaną pamięcią.
Uwagi
W programie .NET 7 i starszych wersjach: jeśli przypięte ustawienie ma wartość true
, T
nie może być typem odwołania ani typem zawierającym odwołania do obiektów.
Pomijanie inicjowania zerowego jest zagrożeniem bezpieczeństwa. Niezainicjowana tablica może zawierać nieprawidłowe wystąpienia typu wartości lub informacje poufne utworzone przez inne części aplikacji. Kod działający na niezainicjowanych tablicach powinien być intensywnie analizowany, aby upewnić się, że niezainicjowane dane nigdy nie są odczytywane.
Pomijanie inicjowania zerowego przy użyciu tego interfejsu API ma tylko korzyść z wydajności materialnej dla dużych tablic, takich jak kilku kilobajtów lub więcej.