Udostępnij za pośrednictwem


FileRecordSequence.BeginFlush(SequenceNumber, AsyncCallback, Object) Metoda

Definicja

Rozpoczyna operację opróżniania asynchronicznego, używając wcześniej zarezerwowanego miejsca w sekwencji. Nie można dziedziczyć tej metody.

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

Parametry

sequenceNumber
SequenceNumber

Numer sekwencji najnowszego rekordu, który należy zapisać. Jeśli SequenceNumber jest nieprawidłowy, wszystkie rekordy muszą być zapisywane.

callback
AsyncCallback

Opcjonalne wywołanie zwrotne asynchroniczne, które ma być wywoływane po zakończeniu opróżniania.

state
Object

Obiekt udostępniony przez użytkownika, który rozróżnia to konkretne asynchroniczne żądanie opróżniania z innych żądań.

Zwraca

Element IAsyncResult reprezentujący operację opróżniania asynchronicznego, która nadal może być oczekująca.

Implementuje

Wyjątki

Co najmniej jeden argument jest nieprawidłowy.

sequenceNumber jest nieprawidłowa dla tej sekwencji.

sequenceNumber nie znajduje się między numerami podstawowymi i ostatnimi sekwencjami tej sekwencji.

Wystąpił błąd we/wy podczas opróżniania danych.

Metoda została wywołana po usunięciu sekwencji.

Za mało pamięci, aby kontynuować wykonywanie programu.

Uwagi

Należy przekazać wartość zwróconą IAsyncResult przez bieżącą metodę do EndFlush metody, aby upewnić się, że opróżnianie zakończy się i zasoby zostaną odpowiednio uwolnione. Jeśli podczas opróżnienia asynchronicznego wystąpi błąd, wyjątek nie zostanie zgłoszony, dopóki EndFlush metoda nie zostanie wywołana przy użyciu metody zwróconej IAsyncResult przez tę metodę.

Wywołanie tej metody zapewnia, że wszystkie rekordy, które zostały dołączone do obiektu FileRecordSequence , są trwale zapisywane.

Jeśli sekwencja rekordów została usunięta lub jeśli przekazano nieprawidłowy argument, wyjątki są zgłaszane natychmiast w ramach tej operacji. Błędy, które wystąpiły podczas asynchronicznego żądania opróżniania, na przykład awaria dysku podczas żądania we/wy, spowoduje zgłaszanie wyjątków po EndFlush wywołaniu metody.

Dotyczy