다음을 통해 공유


RandomAccess.ReadAsync 메서드

정의

오버로드

ReadAsync(SafeFileHandle, IReadOnlyList<Memory<Byte>>, Int64, CancellationToken)

지정된 오프셋에서 지정된 파일에서 바이트 시퀀스를 읽습니다.

ReadAsync(SafeFileHandle, Memory<Byte>, Int64, CancellationToken)

지정된 오프셋에서 지정된 파일에서 바이트 시퀀스를 읽습니다.

ReadAsync(SafeFileHandle, IReadOnlyList<Memory<Byte>>, Int64, CancellationToken)

Source:
RandomAccess.cs
Source:
RandomAccess.cs
Source:
RandomAccess.cs

지정된 오프셋에서 지정된 파일에서 바이트 시퀀스를 읽습니다.

public static System.Threading.Tasks.ValueTask<long> ReadAsync (Microsoft.Win32.SafeHandles.SafeFileHandle handle, System.Collections.Generic.IReadOnlyList<Memory<byte>> buffers, long fileOffset, System.Threading.CancellationToken cancellationToken = default);
static member ReadAsync : Microsoft.Win32.SafeHandles.SafeFileHandle * System.Collections.Generic.IReadOnlyList<Memory<byte>> * int64 * System.Threading.CancellationToken -> System.Threading.Tasks.ValueTask<int64>
Public Shared Function ReadAsync (handle As SafeFileHandle, buffers As IReadOnlyList(Of Memory(Of Byte)), fileOffset As Long, Optional cancellationToken As CancellationToken = Nothing) As ValueTask(Of Long)

매개 변수

handle
SafeFileHandle

파일 핸들입니다.

buffers
IReadOnlyList<Memory<Byte>>

메모리 버퍼 목록입니다. 이 메서드가 반환되면 이러한 버퍼의 내용이 파일에서 읽은 바이트로 대체됩니다.

fileOffset
Int64

읽을 파일 위치입니다.

cancellationToken
CancellationToken

취소 요청을 모니터링할 토큰입니다. 기본값은 None입니다.

반환

버퍼에 읽은 총 바이트 수입니다. 현재 많은 바이트를 사용할 수 없는 경우 버퍼에 할당된 바이트 수보다 작거나 파일 끝에 도달한 경우 0보다 작을 수 있습니다.

예외

handle 또는 buffersnull인 경우

handle이 잘못되었습니다.

파일이 닫혀 있습니다.

파일은 검색(파이프 또는 소켓)을 지원하지 않습니다.

fileOffset가 음수입니다.

handle 읽기 위해 열리지 않았습니다.

I/O 오류가 발생했습니다.

취소 토큰이 취소되었습니다. 이 예외는 반환된 작업에 저장됩니다.

설명

파일의 위치가 고급이 아닙니다.

이 메서드는 메서드의 동기 대응에서 throw할 수 있는 모든 비사용 예외를 반환하는 작업에 저장됩니다. 예외가 반환된 작업에 저장되면 작업이 대기될 때 해당 예외가 throw됩니다. 와 같은 ArgumentException사용 예외는 여전히 동기적으로 throw됩니다. 저장된 예외는 에서 throw Read(SafeFileHandle, IReadOnlyList<Memory<Byte>>, Int64)된 예외를 참조하세요.

적용 대상

ReadAsync(SafeFileHandle, Memory<Byte>, Int64, CancellationToken)

Source:
RandomAccess.cs
Source:
RandomAccess.cs
Source:
RandomAccess.cs

지정된 오프셋에서 지정된 파일에서 바이트 시퀀스를 읽습니다.

public static System.Threading.Tasks.ValueTask<int> ReadAsync (Microsoft.Win32.SafeHandles.SafeFileHandle handle, Memory<byte> buffer, long fileOffset, System.Threading.CancellationToken cancellationToken = default);
static member ReadAsync : Microsoft.Win32.SafeHandles.SafeFileHandle * Memory<byte> * int64 * System.Threading.CancellationToken -> System.Threading.Tasks.ValueTask<int>
Public Shared Function ReadAsync (handle As SafeFileHandle, buffer As Memory(Of Byte), fileOffset As Long, Optional cancellationToken As CancellationToken = Nothing) As ValueTask(Of Integer)

매개 변수

handle
SafeFileHandle

파일 핸들입니다.

buffer
Memory<Byte>

메모리 영역입니다. 이 메서드가 반환되면 이 지역의 내용이 파일에서 읽은 바이트로 바뀝니다.

fileOffset
Int64

읽을 파일 위치입니다.

cancellationToken
CancellationToken

취소 요청을 모니터링할 토큰입니다. 기본값은 None입니다.

반환

버퍼로 읽어온 총 바이트 수입니다. 현재 많은 바이트를 사용할 수 없는 경우 버퍼에 할당된 바이트 수보다 작거나 파일 끝에 도달한 경우 0보다 작을 수 있습니다.

예외

handlenull입니다.

handle이 잘못되었습니다.

파일이 닫혀 있습니다.

파일은 검색(파이프 또는 소켓)을 지원하지 않습니다.

fileOffset가 음수입니다.

handle 읽기 위해 열리지 않았습니다.

I/O 오류가 발생했습니다.

취소 토큰이 취소되었습니다. 이 예외는 반환된 작업에 저장됩니다.

설명

파일의 위치가 고급이 아닙니다.

적용 대상