MemoryMarshal.CreateFromPinnedArray<T>(T[], Int32, Int32) 方法

定義

在預先定義的目標陣列上建立新的記憶體緩衝區,從 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 指定之元素上的記憶體區塊。 如果 arraynull,或如果 startlength 為 0,方法會傳回 Length 為零的 Memory<T> 執行個體。

例外狀況

array 是 Covariant,且 array 的型別不完全是 T[]

start 或結尾索引不在 0 到 Length 的範圍內。

備註

在呼叫這個方法之前,必須先釘選陣列,而且該陣列在傳回的緩衝區仍在使用中時 Memory<T> ,不得取消釘選。 在未釘選的陣列上呼叫此方法可能會導致記憶體損毀。

適用於