GC.AllocateUninitializedArray<T>(Int32, Boolean) 方法

定義

如果可能的話,會在略過零初始化的情況下配置陣列。

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

指定陣列專案的型別。

參數

length
Int32

指定陣列的長度。

pinned
Boolean

指定是否必須釘選已配置的陣列。

傳回

T[]

具有未初始化記憶體的陣列物件。

備註

如果 pinned 設定 true 為 , T 則不得為參考型別或包含物件參考的類型。

略過零初始化是安全性風險。 單位化陣列可以包含不正確 valuetype 實例或應用程式其他部分所建立的敏感性資訊。 在單位化陣列上操作的程式碼應該經過大量檢查,以確保永遠不會讀取單位化的資料。

略過使用此 API 的零初始化,對於大型陣列而言只有材質效能優點,例如數 KB 以上的緩衝區。

適用於