다음을 통해 공유


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 0의 Memory<T> 인스턴스를 반환합니다.

예외

array는 공변(covariant)이고, array의 형식은 정확히 T[]가 아닙니다.

start 또는 끝 인덱스가 0~Length 범위를 벗어납니다.

설명

이 메서드를 호출하기 전에 배열을 이미 고정해야 하며, 반환하는 버퍼가 아직 사용 중인 동안 Memory<T> 에는 해당 배열을 고정 해제하지 않아야 합니다. 고정되지 않은 배열에서 이 메서드를 호출하면 메모리가 손상될 수 있습니다.

적용 대상