GC.AllocateUninitializedArray<T>(Int32, Boolean) 方法
定義
重要
部分資訊涉及發行前產品,在發行之前可能會有大幅修改。 Microsoft 對此處提供的資訊,不做任何明確或隱含的瑕疵擔保。
如果可能的話,會在略過零初始化的情況下配置陣列。
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 以上的緩衝區。