Compartir vía


BufferedStream.BeginWrite(Byte[], Int32, Int32, AsyncCallback, Object) Método

Definición

Comienza una operación de escritura asincrónica. (Considere usar WriteAsync(Byte[], Int32, Int32, CancellationToken) en su lugar).

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);
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

Parámetros

buffer
Byte[]

Búfer que contiene los datos que se van a escribir en la secuencia actual.

offset
Int32

Desplazamiento en bytes de base cero en buffer desde donde se comienzan a copiar los bytes en la secuencia actual.

count
Int32

Número máximo de bytes que se pueden escribir.

callback
AsyncCallback

Método al que se va a llamar cuando se complete la operación de escritura asincrónica.

state
Object

Objeto proporcionado por el usuario que distingue esta solicitud de escritura asincrónica de otras.

Devoluciones

Objeto que hace referencia a la escritura asincrónica, que puede estar aún pendiente.

Excepciones

La longitud de buffer menos offset es menor que count.

buffer es null.

offset o count es negativo.

La secuencia no admite escritura.

Comentarios

En .NET Framework 4 y versiones anteriores, tiene que usar métodos como BeginWrite y EndWrite para implementar operaciones de archivos asincrónicas. Estos métodos siguen estando disponibles en .NET Framework 4.5 para admitir código heredado; sin embargo, los nuevos métodos asincrónicos, como ReadAsync, WriteAsyncy FlushAsync, le ayudan a implementar operaciones asincrónicas de archivos más fácilmente.

EndWrite se debe llamar exactamente una vez en cada IAsyncResult desde BeginWrite. EndWrite se bloqueará hasta que se haya completado la operación de E/S.

Se aplica a