MemoryMarshal.CreateFromPinnedArray<T>(T[], Int32, Int32) 方法
定義
重要
部分資訊涉及發行前產品,在發行之前可能會有大幅修改。 Microsoft 對此處提供的資訊,不做任何明確或隱含的瑕疵擔保。
在預先定義的目標陣列上建立新的記憶體緩衝區,從 start
索引開始,並包含 length
個項目。
public:
generic <typename T>
static Memory<T> CreateFromPinnedArray(cli::array <T> ^ array, int start, int length);
public static Memory<T> CreateFromPinnedArray<T> (T[]? array, int start, int length);
public static Memory<T> CreateFromPinnedArray<T> (T[] array, int start, int length);
static member CreateFromPinnedArray : 'T[] * int * int -> Memory<'T>
Public Shared Function CreateFromPinnedArray(Of T) (array As T(), start As Integer, length As Integer) As Memory(Of T)
類型參數
- T
陣列的類型。
參數
- array
- T[]
預先固定的來源陣列。
- start
- Int32
要開始記憶體區塊的 array
索引。
- length
- Int32
要包含在記憶體區塊中的項目數量。
傳回
在 array
指定之元素上的記憶體區塊。 如果 array
為 null
,或如果 start
和 length
為 0,方法會傳回 Length 為零的 Memory<T> 執行個體。
例外狀況
array
是 Covariant,且 array
的型別不完全是 T[]
。
start
或結尾索引不在 0 到 Length 的範圍內。
備註
呼叫這個方法之前,必須先釘選陣列,而且該陣列在傳回的緩衝區仍在使用中時 Memory<T> ,不得取消釘選。 在未釘選的陣列上呼叫這個方法可能會導致記憶體損毀。