LogRecordSequence.BeginWriteRestartArea Metoda

Definice

Zahájí asynchronní operaci zápisu do oblasti restartování.

Přetížení

Name Description
BeginWriteRestartArea(IList<ArraySegment<Byte>>, SequenceNumber, ReservationCollection, AsyncCallback, Object)

Zahájí asynchronní operaci zápisu do oblasti restartování pomocí místa, které bylo dříve vyhrazeno v sekvenci. Tuto metodu nelze zdědit.

BeginWriteRestartArea(ArraySegment<Byte>, SequenceNumber, ReservationCollection, AsyncCallback, Object)

Zahájí asynchronní operaci zápisu do oblasti restartování pomocí místa, které bylo dříve vyhrazeno v sekvenci. Tuto metodu nelze zdědit.

BeginWriteRestartArea(IList<ArraySegment<Byte>>, SequenceNumber, ReservationCollection, AsyncCallback, Object)

Zahájí asynchronní operaci zápisu do oblasti restartování pomocí místa, které bylo dříve vyhrazeno v sekvenci. Tuto metodu nelze zdědit.

public:
 virtual IAsyncResult ^ BeginWriteRestartArea(System::Collections::Generic::IList<ArraySegment<System::Byte>> ^ data, System::IO::Log::SequenceNumber newBaseSeqNum, System::IO::Log::ReservationCollection ^ reservationCollection, AsyncCallback ^ callback, System::Object ^ state);
public IAsyncResult BeginWriteRestartArea(System.Collections.Generic.IList<ArraySegment<byte>> data, System.IO.Log.SequenceNumber newBaseSeqNum, System.IO.Log.ReservationCollection reservationCollection, AsyncCallback callback, object state);
abstract member BeginWriteRestartArea : System.Collections.Generic.IList<ArraySegment<byte>> * System.IO.Log.SequenceNumber * System.IO.Log.ReservationCollection * AsyncCallback * obj -> IAsyncResult
override this.BeginWriteRestartArea : System.Collections.Generic.IList<ArraySegment<byte>> * System.IO.Log.SequenceNumber * System.IO.Log.ReservationCollection * AsyncCallback * obj -> IAsyncResult
Public Function BeginWriteRestartArea (data As IList(Of ArraySegment(Of Byte)), newBaseSeqNum As SequenceNumber, reservationCollection As ReservationCollection, callback As AsyncCallback, state As Object) As IAsyncResult

Parametry

data
IList<ArraySegment<Byte>>

Seznam segmentů pole bajtů, které budou zřetězeny a připojeny jako záznam.

newBaseSeqNum
SequenceNumber

Nové základní pořadové číslo. Zadané pořadové číslo musí být větší nebo rovno aktuálnímu základnímu pořadové číslu.

reservationCollection
ReservationCollection

A ReservationCollection obsahující rezervaci, která by se měla použít pro tuto oblast restartování.

callback
AsyncCallback

Volitelné asynchronní zpětné volání, které se má volat při dokončení zápisu do oblasti restartování.

state
Object

Objekt poskytovaný uživatelem, který rozlišuje tento konkrétní asynchronní požadavek na zápis oblasti restartování od jiných požadavků.

Návraty

Jedná se o IAsyncResult asynchronní operaci zápisu do oblasti restartování, která může být stále čekající.

Implementuje

Výjimky

newBaseSeqNum není pro tuto sekvenci platný.

nebo

Zadané pořadové číslo spuštění výčtu protokolu je neplatné.

nebo

data nelze připojit, protože je větší než maximální velikost záznamu.

nebo

reservationCollection nebyla vytvořena touto sekvencí záznamů.

Jeden nebo více parametrů je null.

Nový nebo existující archivní chvost nebo základ aktivního protokolu je neplatný.

nebo

newBaseSeqNum 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.

nebo

Požadavek nelze provést kvůli chybě vstupně-výstupního zařízení.

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

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

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

Posloupnost záznamů je plná.

Poznámky

Tuto metodu IAsyncResult byste měli předat EndWriteRestartArea vrácenou touto metodou, abyste zajistili, že operace zápisu do oblasti restartování byla dokončena a prostředky lze odpovídajícím způsobem uvolnit. Pokud během operace zápisu do oblasti asynchronního restartování došlo k chybě, není vyvolána výjimka, dokud EndWriteRestartArea metoda nebude volána s IAsyncResult vrácenou touto metodou.

Data obsažená v parametru data se zřetězí do jednoho bajtového pole pro připojení jako záznam. Při čtení záznamu však není provedeno žádné zřizování pro rozdělení dat zpět do segmentů pole.

Po úspěšném dokončení operace se základní pořadové číslo aktualizovalo. Všechny záznamy protokolu s pořadovými čísly menšími než nové základní pořadové číslo jsou nepřístupné.

ReservationCollection Pokud je zadaný, zapisovaná oblast restartování spotřebuje místo, které bylo dříve rezervováno, pomocí rezervace obsažené v kolekci. Pokud bude metoda úspěšná, spotřebuje nejmenší rezervaci, která může uchovávat data, a tato rezervace se z kolekce odebere.

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 žádosti o připojení, například selhání disku během V/V požadavku, způsobí vyvolání výjimek při EndWriteRestartArea zavolání metody.

Platí pro

BeginWriteRestartArea(ArraySegment<Byte>, SequenceNumber, ReservationCollection, AsyncCallback, Object)

Zahájí asynchronní operaci zápisu do oblasti restartování pomocí místa, které bylo dříve vyhrazeno v sekvenci. Tuto metodu nelze zdědit.

public:
 virtual IAsyncResult ^ BeginWriteRestartArea(ArraySegment<System::Byte> data, System::IO::Log::SequenceNumber newBaseSeqNum, System::IO::Log::ReservationCollection ^ reservation, AsyncCallback ^ callback, System::Object ^ state);
public IAsyncResult BeginWriteRestartArea(ArraySegment<byte> data, System.IO.Log.SequenceNumber newBaseSeqNum, System.IO.Log.ReservationCollection reservation, AsyncCallback callback, object state);
abstract member BeginWriteRestartArea : ArraySegment<byte> * System.IO.Log.SequenceNumber * System.IO.Log.ReservationCollection * AsyncCallback * obj -> IAsyncResult
override this.BeginWriteRestartArea : ArraySegment<byte> * System.IO.Log.SequenceNumber * System.IO.Log.ReservationCollection * AsyncCallback * obj -> IAsyncResult
Public Function BeginWriteRestartArea (data As ArraySegment(Of Byte), newBaseSeqNum As SequenceNumber, reservation As ReservationCollection, callback As AsyncCallback, state As Object) As IAsyncResult

Parametry

data
ArraySegment<Byte>

Segmenty pole bajtů, které budou zřetězeny a připojeny jako záznam.

newBaseSeqNum
SequenceNumber

Nové základní pořadové číslo. Zadané pořadové číslo musí být větší nebo rovno aktuálnímu základnímu pořadové číslu.

reservation
ReservationCollection

A ReservationCollection obsahující rezervaci, která by se měla použít pro tuto oblast restartování.

callback
AsyncCallback

Volitelné asynchronní zpětné volání, které se má volat při dokončení zápisu do oblasti restartování.

state
Object

Objekt poskytovaný uživatelem, který rozlišuje tento konkrétní asynchronní požadavek na zápis oblasti restartování od jiných požadavků.

Návraty

Jedná se o IAsyncResult asynchronní operaci zápisu do oblasti restartování, která může být stále čekající.

Implementuje

Výjimky

newBaseSeqNum není pro tuto sekvenci platný.

nebo

Zadané pořadové číslo spuštění výčtu protokolu je neplatné.

nebo

data nelze připojit, protože je větší než maximální velikost záznamu.

nebo

reservation nebyla vytvořena touto sekvencí záznamů.

Jeden nebo více parametrů je null.

Nový nebo existující archivní chvost nebo základ aktivního protokolu je neplatný.

nebo

newBaseSeqNum 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.

nebo

Požadavek nelze provést kvůli chybě vstupně-výstupního zařízení.

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

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

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

Posloupnost záznamů je plná.

Poznámky

Tuto metodu IAsyncResult byste měli předat EndWriteRestartArea vrácenou touto metodou, abyste zajistili, že operace zápisu do oblasti restartování byla dokončena a prostředky lze odpovídajícím způsobem uvolnit. Pokud během operace zápisu do oblasti asynchronního restartování došlo k chybě, není vyvolána výjimka, dokud EndWriteRestartArea metoda nebude volána s IAsyncResult vrácenou touto metodou.

Data obsažená v parametru data se zřetězí do jednoho bajtového pole pro připojení jako záznam. Při čtení záznamu však není provedeno žádné zřizování pro rozdělení dat zpět do segmentů pole.

Po úspěšném dokončení operace se základní pořadové číslo aktualizovalo. Všechny záznamy protokolu s pořadovými čísly menšími než nové základní pořadové číslo jsou nepřístupné.

ReservationCollection Pokud je zadaný, zapisovaná oblast restartování spotřebuje místo, které bylo dříve rezervováno, pomocí rezervace obsažené v kolekci. Pokud bude metoda úspěšná, spotřebuje nejmenší rezervaci, která může uchovávat data, a tato rezervace se z kolekce odebere.

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 žádosti o připojení, například selhání disku během V/V požadavku, způsobí vyvolání výjimek při EndWriteRestartArea zavolání metody.

Platí pro