TarReader.GetNextEntryAsync(Boolean, CancellationToken) Метод

Определение

Асинхронно извлекает следующую запись из архивного потока.

public System.Threading.Tasks.ValueTask<System.Formats.Tar.TarEntry?> GetNextEntryAsync (bool copyData = false, System.Threading.CancellationToken cancellationToken = default);
member this.GetNextEntryAsync : bool * System.Threading.CancellationToken -> System.Threading.Tasks.ValueTask<System.Formats.Tar.TarEntry>
Public Function GetNextEntryAsync (Optional copyData As Boolean = false, Optional cancellationToken As CancellationToken = Nothing) As ValueTask(Of TarEntry)

Параметры

copyData
Boolean

true , чтобы скопировать данные записи в новый MemoryStreamобъект . Это полезно, если базовый архивный поток не поддерживает поиск, а доступ к данным необходимо получить позже.

false Значение , если данные не следует копировать в новый поток. Если базовый поток не поддерживает поиск, пользователь несет ответственность за чтение и обработку DataStream сразу после вызова этого метода.

Значение по умолчанию — false.

cancellationToken
CancellationToken

Токен для отслеживания запросов отмены. Значение по умолчанию — None.

Возвращаемое значение

Задача со значением, TarEntry содержащая экземпляр , если найдена допустимая запись или null достигнут конец архива.

Исключения

Архив имеет неправильный формат.

-или-

Архив содержит записи в разных форматах.

-или-

В текущем Pax архиве найдено несколько глобальных расширенных атрибутов.

-или-

Две или более записей расширенных атрибутов были найдены последовательно в текущем Pax архиве.

Возникла проблема ввода-вывода.

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

Комментарии

Этот метод сохраняет в задаче все исключения, не относящиеся к использованию, которые может создавать синхронный аналог метода. Если исключение сохраняется в возвращаемой задаче, это исключение будет создано при ожидании задачи. Исключения использования, такие как ArgumentException, по-прежнему создаются синхронно. Хранимые исключения см. в разделе исключения, создаваемые GetNextEntry(Boolean).

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