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


MemoryStream.WriteAsync Метод

Определение

Перегрузки

WriteAsync(ReadOnlyMemory<Byte>, CancellationToken)

Асинхронно записывает последовательность байтов, содержащихся в source, в текущий поток в памяти, перемещает текущую позицию внутри этого потока в памяти на число записанных байтов и отслеживает запросы отмены.

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

Асинхронно записывает последовательность байтов в текущий поток, перемещает текущую позицию внутри потока на число записанных байтов и отслеживает запросы отмены.

WriteAsync(ReadOnlyMemory<Byte>, CancellationToken)

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

Асинхронно записывает последовательность байтов, содержащихся в source, в текущий поток в памяти, перемещает текущую позицию внутри этого потока в памяти на число записанных байтов и отслеживает запросы отмены.

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

Параметры

sourcebuffer
ReadOnlyMemory<Byte>

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

cancellationToken
CancellationToken

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

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

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

Исключения

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

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

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

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

Асинхронно записывает последовательность байтов в текущий поток, перемещает текущую позицию внутри потока на число записанных байтов и отслеживает запросы отмены.

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[] buffer, int offset, int count, System.Threading.CancellationToken cancellationToken);
[System.Runtime.InteropServices.ComVisible(false)]
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
[<System.Runtime.InteropServices.ComVisible(false)>]
override this.WriteAsync : byte[] * int * int * System.Threading.CancellationToken -> System.Threading.Tasks.Task
Public Overrides Function WriteAsync (buffer As Byte(), offset As Integer, count As Integer, cancellationToken As CancellationToken) As Task

Параметры

buffer
Byte[]

Буфер, из которого записываются данные.

offset
Int32

Смещение байтов (начиная с нуля) в buffer, с которого начинается копирование байтов в поток.

count
Int32

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

cancellationToken
CancellationToken

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

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

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

Атрибуты

Исключения

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

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

Сумма offset и count больше, чем длина буфера.

Поток не поддерживает запись.

Поток был удален.

Поток в настоящее время используется предыдущей операцией записи.

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

Комментарии

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

Вы можете создать маркер отмены, создав экземпляр CancellationTokenSource класса и передав свойство Token в cancellationToken качестве параметра .

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

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