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[]
初期化されていないメモリを持つ配列オブジェクト。
注釈
.NET 7 以前のバージョン: 固定が true
に設定されている場合、T
参照型またはオブジェクト参照を含む型にすることはできません。
ゼロ初期化をスキップすると、セキュリティ上のリスクがあります。 初期化されていない配列には、無効な valuetype インスタンスや、アプリケーションの他の部分によって作成された機密情報を含めることができます。 初期化されていない配列で動作するコードは、初期化されていないデータが読み取られるのを確実にしないように、注意深く調査する必要があります。
この API を使用してゼロ初期化をスキップすると、数キロバイト以上のバッファーなど、大規模な配列に対してのみ重要なパフォーマンス上の利点があります。
適用対象
GitHub で Microsoft と共同作業する
このコンテンツのソースは GitHub にあります。そこで、issue や pull request を作成および確認することもできます。 詳細については、共同作成者ガイドを参照してください。
.NET