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. Если array значение равно nullstartlength или равно 0, метод возвращает Memory<T> экземпляр Length нуля.
Исключения
array является ковариантным, и тип array не совсем T[].
Или start конечный индекс не находится в диапазоне от 0 до Length.
Комментарии
Массив должен быть закреплен перед вызовом этого метода, и этот массив не должен быть откречен в то время как Memory<T> буфер, который возвращается, по-прежнему используется. Вызов этого метода в незакреченном массиве может привести к повреждению памяти.