GC.AllocateUninitializedArray<T>(Int32, Boolean) Metoda
Definice
Důležité
Některé informace platí pro předběžně vydaný produkt, který se může zásadně změnit, než ho výrobce nebo autor vydá. Microsoft neposkytuje žádné záruky, výslovné ani předpokládané, týkající se zde uváděných informací.
Pokud je to možné, přidělí pole při vynechání inicializace nuly.
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
Určuje typ prvku pole.
Parametry
- length
- Int32
Určuje délku pole.
- pinned
- Boolean
Určuje, jestli je nutné připnout přidělenou matici.
Návraty
Maticový objekt s neinicializovanou pamětí.
Poznámky
V rozhraní .NET 7 a starších verzích: Pokud je připnutá na true
, T
nesmí být referenčním typem ani typem, který obsahuje odkazy na objekty.
Přeskočení nulové inicializace představuje bezpečnostní riziko. Neinicializované pole může obsahovat neplatné instance hodnotového typu nebo citlivé informace vytvořené jinými částmi aplikace. Kód, který pracuje na neinicializovaných polích, by měl být silně kontrolován, aby se zajistilo, že se neinicializovaná data nikdy nečtou.
Přeskočení nulové inicializace pomocí tohoto rozhraní API má výhodu pouze pro výkon velkých polí, jako jsou vyrovnávací paměti několika kilobajtů nebo více.