MemoryMarshal.CreateFromPinnedArray<T>(T[], Int32, Int32) Método
Definição
Importante
Algumas informações se referem a produtos de pré-lançamento que podem ser substancialmente modificados antes do lançamento. A Microsoft não oferece garantias, expressas ou implícitas, das informações aqui fornecidas.
Cria um novo buffer de memória sobre a parte da matriz de destino pré-fixada começando pelo índice start
e formado por itens 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)
Parâmetros de tipo
- T
O tipo da matriz.
Parâmetros
- array
- T[]
A matriz de origem pré-fixada.
- start
- Int32
O índice de array
no qual o bloco de memória será iniciado.
- length
- Int32
O número de itens a serem incluídos no bloco de memória.
Retornos
Um bloco de memória nos elementos especificados de array
. Se array
for null
, ou se start
e length
forem 0, o método retornará uma instância Memory<T> de Length com valor zero.
Exceções
array
é covariante e o tipo de array
não é exatamente T[]
.
O start
ou o índice final não está no intervalo de 0 a Length.
Comentários
A matriz já deve ser fixada antes que esse método seja chamado e essa matriz não deve ser desafixada enquanto o Memory<T> buffer retornado ainda estiver em uso. Chamar esse método em uma matriz desafixada pode resultar em corrupção de memória.