BufferedStream.BeginWrite(Byte[], Int32, Int32, AsyncCallback, Object) Метод

Определение

Начинает асинхронную операцию записи. (Рекомендуется использовать WriteAsync(Byte[], Int32, Int32, CancellationToken) вместо этого.)

public:
 override IAsyncResult ^ BeginWrite(cli::array <System::Byte> ^ buffer, int offset, int count, AsyncCallback ^ callback, System::Object ^ state);
public override IAsyncResult BeginWrite(byte[] buffer, int offset, int count, AsyncCallback callback, object state);
override this.BeginWrite : byte[] * int * int * AsyncCallback * obj -> IAsyncResult
Public Overrides Function BeginWrite (buffer As Byte(), offset As Integer, count As Integer, callback As AsyncCallback, state As Object) As IAsyncResult

Параметры

buffer
Byte[]

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

offset
Int32

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

count
Int32

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

callback
AsyncCallback

Метод, вызываемого при завершении асинхронной операции записи.

state
Object

Предоставленный пользователем объект, который отличает этот конкретный асинхронный запрос на запись от других запросов.

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

Объект, ссылающийся на асинхронную запись, которая по-прежнему может быть ожидающей.

Исключения

buffer длина минуса offset меньше count.

buffer равно null.

offset или count отрицательный.

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

Комментарии

В .NET Framework 4 и более ранних версиях необходимо использовать такие методы, как BeginWrite асинхронные EndWrite операции с файлами. Эти методы по-прежнему доступны в .NET Framework 4.5 для поддержки устаревшего кода; однако новые асинхронные методы, такие как ReadAsync, WriteAsyncи FlushAsync, помогают упростить асинхронные операции файлов.

EndWrite должен вызываться ровно один раз на каждом IAsyncResult из BeginWrite. EndWrite блокируется до завершения операции ввода-вывода.

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