Share via


FileRecordSequence.BeginWriteRestartArea Metoda

Definice

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

Přetížení

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.

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>

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.

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

Jeden nebo více argumentů je null.

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

-nebo-

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

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

-nebo-

newBaseSeqNum není pro tuto sekvenci platný.

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

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

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

Na webu se nenachází reservationsžádná rezervace dostatečně velká, aby se vešladata.

Poznámky

Měli byste předat IAsyncResult vrácenou touto metodou EndWriteRestartArea metodě, 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 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(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 ^ reservation, AsyncCallback ^ callback, System::Object ^ state);
public IAsyncResult BeginWriteRestartArea (System.Collections.Generic.IList<ArraySegment<byte>> data, System.IO.Log.SequenceNumber newBaseSeqNum, System.IO.Log.ReservationCollection reservation, 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, reservation 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.

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

Jeden nebo více argumentů je null.

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

-nebo-

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

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

-nebo-

newBaseSeqNum není pro tuto sekvenci platný.

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

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

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

Na webu se nenachází reservationsžádná rezervace dostatečně velká, aby se vešladata.

Poznámky

Měli byste předat IAsyncResult vrácenou touto metodou EndWriteRestartArea metodě, 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 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