LogRecordSequence.BeginWriteRestartArea Metoda

Definice

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

Přetížení

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

Zahájí asynchronní operaci zápisu do oblasti restartování s využitím místa, které bylo dříve rezervováno v sekvenci. Tuto metodu nelze dědit.

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

Zahájí asynchronní operaci zápisu do oblasti restartování s využitím místa, které bylo dříve rezervováno v sekvenci. Tuto metodu nelze dědit.

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

Zahájí asynchronní operaci zápisu do oblasti restartování s využitím místa, které bylo dříve rezervováno v sekvenci. Tuto metodu nelze dě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ém číslu.

reservationCollection
ReservationCollection

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

callback
AsyncCallback

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

state
Object

Uživatelem zadaný objekt, který odlišuje tento konkrétní asynchronní požadavek na zápis oblasti restartování od ostatních požadavků.

Návraty

Představuje IAsyncResult asynchronní operaci zápisu do oblasti restartování, která může stále čekat na vyřízení.

Implementuje

Výjimky

newBaseSeqNum není pro tuto sekvenci platný.

-nebo-

Zadané počáteční pořadové číslo 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í konec 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 nebylo možné provést kvůli neočekávané výjimce vstupně-výstupních operací.

-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

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

Data obsažená v parametru data budou zřetězena do jednoho bajtového pole pro připojení jako záznam. Při čtení záznamu však není provedeno žádné ustanovení 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 zadána hodnota , oblast zapsaného restartování bude spotřebovávat místo, které bylo dříve rezervováno, a to pomocí rezervace obsažené v kolekci. Pokud je metoda úspěšná, spotřebuje nejmenší rezervaci, která může uchovávat data, a tato rezervace se z kolekce odebere.

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 při asynchronním přidávacím požadavku, 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 EndWriteRestartArea zavolání metody.

Platí pro

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

Zahájí asynchronní operaci zápisu do oblasti restartování s využitím místa, které bylo dříve rezervováno v sekvenci. Tuto metodu nelze dě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ém číslu.

reservation
ReservationCollection

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

callback
AsyncCallback

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

state
Object

Uživatelem zadaný objekt, který odlišuje tento konkrétní asynchronní požadavek na zápis oblasti restartování od ostatních požadavků.

Návraty

Představuje IAsyncResult asynchronní operaci zápisu do oblasti restartování, která může stále čekat na vyřízení.

Implementuje

Výjimky

newBaseSeqNum není pro tuto sekvenci platný.

-nebo-

Zadané počáteční pořadové číslo 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í konec 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 nebylo možné provést kvůli neočekávané výjimce vstupně-výstupních operací.

-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

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

Data obsažená v parametru data budou zřetězena do jednoho bajtového pole pro připojení jako záznam. Při čtení záznamu však není provedeno žádné ustanovení 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 zadána hodnota , oblast zapsaného restartování bude spotřebovávat místo, které bylo dříve rezervováno, a to pomocí rezervace obsažené v kolekci. Pokud je metoda úspěšná, spotřebuje nejmenší rezervaci, která může uchovávat data, a tato rezervace se z kolekce odebere.

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 při asynchronním přidávacím požadavku, 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 EndWriteRestartArea zavolání metody.

Platí pro