Поделиться через


RandomAccess.ReadAsync Метод

Определение

Перегрузки

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

Считывает последовательность байтов из заданного файла с заданным смещением.

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

Считывает последовательность байтов из заданного файла с заданным смещением.

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

Исходный код:
RandomAccess.cs
Исходный код:
RandomAccess.cs
Исходный код:
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 или buffers имеет значение null.

handle недопустим.

Файл закрыт.

Файл не поддерживает поиск (канал или сокет).

fileOffset является отрицательным значением.

handle не был открыт для чтения.

Ошибка ввода/вывода.

Маркер отмены был отменен. Это исключение сохраняется в возвращаемой задаче.

Комментарии

Положение файла не является расширенным.

Этот метод сохраняет в задаче все исключения, не относящиеся к использованию, которые может создавать синхронный аналог метода. Если исключение сохраняется в возвращаемой задаче, это исключение будет создано при ожидании задачи. Исключения использования, такие как ArgumentException, по-прежнему создаются синхронно. Хранимые исключения см. в разделе исключения, создаваемые Read(SafeFileHandle, IReadOnlyList<Memory<Byte>>, Int64).

Применяется к

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

Исходный код:
RandomAccess.cs
Исходный код:
RandomAccess.cs
Исходный код:
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), если достигнут конец файла.

Исключения

handle имеет значение null.

handle недопустим.

Файл закрыт.

Файл не поддерживает поиск (канал или сокет).

fileOffset является отрицательным значением.

handle не был открыт для чтения.

Ошибка ввода/вывода.

Маркер отмены был отменен. Это исключение сохраняется в возвращаемой задаче.

Комментарии

Положение файла не является расширенным.

Применяется к