LogRecordSequence.BeginFlush(SequenceNumber, AsyncCallback, Object) Método

Definición

Comienza una operación de vaciado asincrónico, usando espacio reservado previamente en la secuencia. Este método no se puede heredar.

public:
 virtual IAsyncResult ^ BeginFlush(System::IO::Log::SequenceNumber sequenceNumber, AsyncCallback ^ callback, System::Object ^ state);
public IAsyncResult BeginFlush(System.IO.Log.SequenceNumber sequenceNumber, AsyncCallback callback, object state);
abstract member BeginFlush : System.IO.Log.SequenceNumber * AsyncCallback * obj -> IAsyncResult
override this.BeginFlush : System.IO.Log.SequenceNumber * AsyncCallback * obj -> IAsyncResult
Public Function BeginFlush (sequenceNumber As SequenceNumber, callback As AsyncCallback, state As Object) As IAsyncResult

Parámetros

sequenceNumber
SequenceNumber

Número de secuencia del registro más reciente que se debe escribir. Si esto SequenceNumber no es válido, se deben escribir todos los registros.

callback
AsyncCallback

Se llamará a una devolución de llamada asincrónica opcional cuando se complete el vaciado.

state
Object

Objeto proporcionado por el usuario que distingue esta solicitud de vaciado asincrónica determinada de otras solicitudes.

Devoluciones

que IAsyncResult representa la operación de vaciado asincrónico, que todavía podría estar pendiente.

Implementaciones

Excepciones

sequenceNumber no es válido para esta secuencia.

sequenceNumber no está entre los números de base y última secuencia de esta secuencia.

No se pudo realizar la solicitud debido a una excepción de E/S inesperada.

El registro especificado no tiene ninguna extensión. Se deben crear una o varias extensiones para poder usar una secuencia de registros.

No se puede realizar la operación porque la secuencia de registros se abrió con acceso de solo lectura.

Se llamó al método después de eliminar la secuencia.

No hay memoria suficiente para continuar con la ejecución del programa.

La secuencia de registros está llena.

El sistema operativo deniega el acceso a la secuencia de registro especificada.

Comentarios

Debe pasar el IAsyncResult valor devuelto por el método actual al EndFlush método para asegurarse de que el vaciado se completa y los recursos se liberan correctamente. Si se produce un error durante un vaciado asincrónico, no se produce una excepción hasta que se llama al EndFlush método con el IAsyncResult devuelto por este método.

Al llamar a este método, se garantiza que todos los registros que se han anexado a LogRecordSequence se escriban de forma duradera.

Si se ha eliminado una secuencia de registros o si se pasa un argumento no válido, las excepciones se inician inmediatamente dentro de esta operación. Los errores que se produjeron durante una solicitud de vaciado asincrónica, por ejemplo, un error de disco durante la solicitud de E/S, darán lugar a excepciones que se producen cuando se llama al EndFlush método .

Se aplica a