Sdílet prostřednictvím


LogRecordSequence.BeginFlush(SequenceNumber, AsyncCallback, Object) Metoda

Definice

Zahájí asynchronní operaci vyprázdnění s použitím místa, které bylo dříve v pořadí vyhrazeno. Tuto metodu nelze dědit.

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

Pořadové číslo posledního záznamu, který musí být zapsán. Pokud je tato SequenceNumber možnost neplatná, musí být všechny záznamy zapsány.

callback
AsyncCallback

Volitelné asynchronní zpětné volání, které se má volat po dokončení vyprázdnění.

state
Object

Uživatelem zadaný objekt, který odlišuje tento konkrétní asynchronní požadavek vyprázdnění od ostatních požadavků.

Návraty

Představuje IAsyncResult asynchronní operaci vyprázdnění, která může stále čekat na vyřízení.

Implementuje

Výjimky

sequenceNumber není pro tuto sekvenci platný.

sequenceNumber není mezi základním a posledním pořadovými čísly této sekvence.

Požadavek nebylo možné provést kvůli neočekávané výjimce vstupně-výstupních operací.

Zadaný protokol nemá žádné rozsahy. Aby bylo možné použít posloupnost záznamů, musí být vytvořen jeden nebo více rozsahů.

Operaci nelze provést, protože sekvence záznamů byla otevřena s přístupem jen pro čtení.

Metoda byla volána po odstranění sekvence.

Pro pokračování v provádění programu není dostatek paměti.

Posloupnost záznamů je plná.

Operační systém odepře přístup k zadané sekvenci protokolu.

Poznámky

Měli byste předat metodu IAsyncResult vrácenou aktuální metodou EndFlush , aby se zajistilo, že se vyprázdnění dokončí a prostředky se uvolní odpovídajícím způsobem. Pokud dojde k chybě během asynchronního vyprázdnění, není vyvolána výjimka, dokud EndFlush není volána metoda s IAsyncResult vrácenou touto metodou.

Volání této metody zajišťuje, že všechny záznamy, které byly připojeny k LogRecordSequence jsou trvale zapsány.

Pokud byla sekvence záznamů odstraněna nebo pokud předáte neplatný argument, jsou výjimky vyvolána okamžitě v rámci této operace. Chyby, ke kterým došlo během asynchronního požadavku na vyprázdnění, například při selhání disku během V/V požadavku, budou mít za následek vyvolání výjimek při EndFlush zavolání metody.

Platí pro