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


DeflateStream.WriteAsync Метод

Определение

Перегрузки

WriteAsync(ReadOnlyMemory<Byte>, CancellationToken)

Асинхронно записывает сжатые байты в базовый поток Deflate из заданной области памяти только для чтения.

WriteAsync(Byte[], Int32, Int32, CancellationToken)

Асинхронно записывает сжатые байты в основной поток Deflate из указанного массива байтов.

WriteAsync(ReadOnlyMemory<Byte>, CancellationToken)

Исходный код:
DeflateStream.cs
Исходный код:
DeflateStream.cs
Исходный код:
DeflateStream.cs

Асинхронно записывает сжатые байты в базовый поток Deflate из заданной области памяти только для чтения.

public override System.Threading.Tasks.ValueTask WriteAsync (ReadOnlyMemory<byte> buffer, System.Threading.CancellationToken cancellationToken = default);
override this.WriteAsync : ReadOnlyMemory<byte> * System.Threading.CancellationToken -> System.Threading.Tasks.ValueTask
Public Overrides Function WriteAsync (buffer As ReadOnlyMemory(Of Byte), Optional cancellationToken As CancellationToken = Nothing) As ValueTask

Параметры

buffer
ReadOnlyMemory<Byte>

Область памяти, из которой будут записываться данные.

cancellationToken
CancellationToken

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

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

Задача, представляющая асинхронную операцию записи.

Исключения

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

Комментарии

Метод WriteAsync позволяет выполнять ресурсоемкие операции ввода-вывода, не блокируя поток main. Этот фактор производительности особенно важен для классических приложений, где ресурсоемкая потоковая операция может блокировать поток пользовательского интерфейса и выглядеть приложение так, как будто оно не работает. Асинхронные методы используются в сочетании с ключевыми словами async и await в Visual Basic и C#.

Используйте свойство , CanWrite чтобы определить, поддерживает ли текущий экземпляр запись.

Если операция отменена до ее завершения, возвращаемая задача содержит TaskStatus.Canceled значение свойства Task.Status .

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

WriteAsync(Byte[], Int32, Int32, CancellationToken)

Исходный код:
DeflateStream.cs
Исходный код:
DeflateStream.cs
Исходный код:
DeflateStream.cs

Асинхронно записывает сжатые байты в основной поток Deflate из указанного массива байтов.

public:
 override System::Threading::Tasks::Task ^ WriteAsync(cli::array <System::Byte> ^ array, int offset, int count, System::Threading::CancellationToken cancellationToken);
public:
 override System::Threading::Tasks::Task ^ WriteAsync(cli::array <System::Byte> ^ buffer, int offset, int count, System::Threading::CancellationToken cancellationToken);
public override System.Threading.Tasks.Task WriteAsync (byte[] array, int offset, int count, System.Threading.CancellationToken cancellationToken);
public override System.Threading.Tasks.Task WriteAsync (byte[] buffer, int offset, int count, System.Threading.CancellationToken cancellationToken);
override this.WriteAsync : byte[] * int * int * System.Threading.CancellationToken -> System.Threading.Tasks.Task
override this.WriteAsync : byte[] * int * int * System.Threading.CancellationToken -> System.Threading.Tasks.Task
Public Overrides Function WriteAsync (array As Byte(), offset As Integer, count As Integer, cancellationToken As CancellationToken) As Task
Public Overrides Function WriteAsync (buffer As Byte(), offset As Integer, count As Integer, cancellationToken As CancellationToken) As Task

Параметры

arraybuffer
Byte[]

Буфер, содержащий данные для сжатия.

offset
Int32

Отсчитываемое от нуля смещение байтов, с которого начинается копирование байтов в поток Deflate.

count
Int32

Максимальное число байтов для записи.

cancellationToken
CancellationToken

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

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

Задача, представляющая асинхронную операцию записи.

Исключения

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

Комментарии

Метод WriteAsync позволяет выполнять ресурсоемкие операции ввода-вывода, не блокируя поток main. Этот фактор производительности особенно важен для классических приложений, где ресурсоемкая потоковая операция может блокировать поток пользовательского интерфейса и выглядеть приложение так, как будто оно не работает. Асинхронные методы используются в сочетании с ключевыми словами async и await в Visual Basic и C#.

Используйте свойство , CanWrite чтобы определить, поддерживает ли текущий экземпляр запись.

Если операция отменена до ее завершения, возвращаемая задача содержит TaskStatus.Canceled значение свойства Task.Status .

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

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