BufferedStream.BeginWrite(Byte[], Int32, Int32, AsyncCallback, Object) Método
Definición
Importante
Parte de la información hace referencia a la versión preliminar del producto, que puede haberse modificado sustancialmente antes de lanzar la versión definitiva. Microsoft no otorga ninguna garantía, explícita o implícita, con respecto a la información proporcionada aquí.
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.