LogRecordSequence.BeginFlush(SequenceNumber, AsyncCallback, Object) Metoda
Definice
Důležité
Některé informace platí pro předběžně vydaný produkt, který se může zásadně změnit, než ho výrobce nebo autor vydá. Microsoft neposkytuje žádné záruky, výslovné ani předpokládané, týkající se zde uváděných informací.
Zahájí asynchronní operaci vyprazdnutí pomocí místa, které bylo dříve vyhrazeno v posloupnosti. Tuto metodu nelze zdě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 hodnota neplatná, všechny záznamy musí být zapsány.
- callback
- AsyncCallback
Volitelné asynchronní zpětné volání, které se má volat po dokončení vyprázdnění.
- state
- Object
Objekt poskytovaný uživatelem, který rozlišuje tento konkrétní asynchronní požadavek na vyprázdnění od jiných požadavků.
Návraty
Jedná se o IAsyncResult asynchronní operaci vyprázdnění, která může být stále čekající.
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 nelze provést kvůli neočekávané výjimce vstupně-výstupní operace.
Zadaný protokol nemá žádné rozsahy. Před použití sekvence záznamu 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 IAsyncResult vrácenou aktuální metodou EndFlush metodě, aby se zajistilo, že se vyprazdnutí dokončí a prostředky budou uvolněny odpovídajícím způsobem. Pokud dojde k chybě během asynchronního vyprázdnění, výjimka není vyvolána, dokud EndFlush metoda není volána s IAsyncResult vrácenou touto metodou.
Volání této metody zajišťuje, že všechny záznamy, které byly připojeny k objektu LogRecordSequence jsou trvale zapsány.
Pokud je posloupnost záznamů uvolněna nebo pokud předáte neplatný argument, výjimky se v rámci této operace vyvolá okamžitě. Chyby, ke kterým došlo během asynchronního vyprázdnění požadavku, například selhání disku během V/V požadavku, způsobí vyvolání výjimek při EndFlush zavolání metody.