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


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

Определение

Начинает операцию асинхронной записи.

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);
public override IAsyncResult BeginWrite (byte[] buffer, int offset, int count, AsyncCallback callback, object state);
[System.Security.SecurityCritical]
public override IAsyncResult BeginWrite (byte[] buffer, int offset, int count, AsyncCallback callback, object state);
override this.BeginWrite : byte[] * int * int * AsyncCallback * obj -> IAsyncResult
[<System.Security.SecurityCritical>]
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

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

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

Объект IAsyncResult, который ссылается на операцию асинхронной записи.

Атрибуты

Исключения

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

Значение параметраoffset меньше 0.

-или-

Значение параметраcount меньше 0.

count больше, чем число байтов, доступных в buffer.

Канал закрыт.

Канал не поддерживает операции записи.

Канал отключен, ожидает подключения, или дескриптор не был задан.

Канал разорван, или возникла другая ошибка ввода-вывода.

Комментарии

EndWrite должен вызываться один раз для каждого вызова BeginWrite. Это можно сделать либо в том же коде, который вызвал BeginWrite , либо в обратном вызове, передаваемом в BeginWrite.

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

Если канал закрыт или в передается BeginWriteнедопустимый аргумент , соответствующие исключения создаются немедленно. Ошибки, возникающие во время асинхронного запроса на запись, происходят в потоке пула потоков, который выполняет запрос. Исключения возникают, когда код вызывает EndWrite метод .

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