LogRecordSequence.BeginAppend Metoda

Definice

Zahájí asynchronní operaci připojení.

Přetížení

BeginAppend(ArraySegment<Byte>, SequenceNumber, SequenceNumber, RecordAppendOptions, AsyncCallback, Object)

Zahájí asynchronní operaci připojení. Tuto metodu nelze zdědit.

public:
 virtual IAsyncResult ^ BeginAppend(ArraySegment<System::Byte> data, System::IO::Log::SequenceNumber nextUndoRecord, System::IO::Log::SequenceNumber previousRecord, System::IO::Log::RecordAppendOptions recordAppendOptions, AsyncCallback ^ callback, System::Object ^ state);
public IAsyncResult BeginAppend(ArraySegment<byte> data, System.IO.Log.SequenceNumber nextUndoRecord, System.IO.Log.SequenceNumber previousRecord, System.IO.Log.RecordAppendOptions recordAppendOptions, AsyncCallback callback, object state);
abstract member BeginAppend : ArraySegment<byte> * System.IO.Log.SequenceNumber * System.IO.Log.SequenceNumber * System.IO.Log.RecordAppendOptions * AsyncCallback * obj -> IAsyncResult
override this.BeginAppend : ArraySegment<byte> * System.IO.Log.SequenceNumber * System.IO.Log.SequenceNumber * System.IO.Log.RecordAppendOptions * AsyncCallback * obj -> IAsyncResult
Public Function BeginAppend (data As ArraySegment(Of Byte), nextUndoRecord As SequenceNumber, previousRecord As SequenceNumber, recordAppendOptions As RecordAppendOptions, 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.

nextUndoRecord
SequenceNumber

Pořadové číslo dalšího záznamu v pořadí zadaném uživatelem.

previousRecord
SequenceNumber

Pořadové číslo dalšího záznamu v předchozím pořadí.

recordAppendOptions
RecordAppendOptions

Platná hodnota, která určuje způsob zápisu RecordAppendOptions dat.

callback
AsyncCallback

Volitelné asynchronní zpětné volání, které se má volat při dokončení připojení.

state
Object

Objekt poskytovaný uživatelem, který rozlišuje tento konkrétní asynchronní přidávací požadavek od jiných požadavků.

Návraty

Jedná se o IAsyncResult asynchronní připojení, které může být stále čekající.

Implementuje

Výjimky

nextUndoRecord nebo previousRecord není pro tuto sekvenci platný.

nebo

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

nebo

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

Jeden nebo více argumentů jsou null.

nextUndoRecord nebo previousRecord 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í.

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

Tuto metodu IAsyncResult byste měli předat EndAppend vrácenou touto metodou, abyste zajistili, že operace připojení byla dokončena a prostředky lze odpovídajícím způsobem uvolnit. Pokud došlo k chybě během asynchronního připojení, výjimka není vyvolána, dokud EndAppend metoda není 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.

Za normálních okolností se tato metoda dokončí před zápisem záznamu. Pokud chcete zajistit, aby byl záznam zapsán, zadejte ForceFlush příznak pomocí parametru recordAppendOptions nebo volejte metodu Flush .

Platí pro

BeginAppend(IList<ArraySegment<Byte>>, SequenceNumber, SequenceNumber, RecordAppendOptions, AsyncCallback, Object)

Zahájí asynchronní operaci připojení. Tuto metodu nelze zdědit.

public:
 virtual IAsyncResult ^ BeginAppend(System::Collections::Generic::IList<ArraySegment<System::Byte>> ^ data, System::IO::Log::SequenceNumber userRecord, System::IO::Log::SequenceNumber previousRecord, System::IO::Log::RecordAppendOptions recordAppendOptions, AsyncCallback ^ callback, System::Object ^ state);
public IAsyncResult BeginAppend(System.Collections.Generic.IList<ArraySegment<byte>> data, System.IO.Log.SequenceNumber userRecord, System.IO.Log.SequenceNumber previousRecord, System.IO.Log.RecordAppendOptions recordAppendOptions, AsyncCallback callback, object state);
abstract member BeginAppend : System.Collections.Generic.IList<ArraySegment<byte>> * System.IO.Log.SequenceNumber * System.IO.Log.SequenceNumber * System.IO.Log.RecordAppendOptions * AsyncCallback * obj -> IAsyncResult
override this.BeginAppend : System.Collections.Generic.IList<ArraySegment<byte>> * System.IO.Log.SequenceNumber * System.IO.Log.SequenceNumber * System.IO.Log.RecordAppendOptions * AsyncCallback * obj -> IAsyncResult
Public Function BeginAppend (data As IList(Of ArraySegment(Of Byte)), userRecord As SequenceNumber, previousRecord As SequenceNumber, recordAppendOptions As RecordAppendOptions, 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.

userRecord
SequenceNumber

Pořadové číslo dalšího záznamu v pořadí zadaném uživatelem.

previousRecord
SequenceNumber

Pořadové číslo dalšího záznamu v předchozím pořadí.

recordAppendOptions
RecordAppendOptions

Platná hodnota, která určuje způsob zápisu RecordAppendOptions dat.

callback
AsyncCallback

Volitelné asynchronní zpětné volání, které se má volat při dokončení připojení.

state
Object

Objekt poskytovaný uživatelem, který rozlišuje tento konkrétní asynchronní přidávací požadavek od jiných požadavků.

Návraty

Jedná se o IAsyncResult asynchronní připojení, které může být stále čekající.

Implementuje

Výjimky

userRecord nebo previousRecord není pro tuto sekvenci platný.

nebo

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

nebo

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

Jeden nebo více argumentů jsou null.

userRecord nebo previousRecord 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í.

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

Tuto metodu IAsyncResult byste měli předat EndAppend vrácenou touto metodou, abyste zajistili, že operace připojení byla dokončena a prostředky lze odpovídajícím způsobem uvolnit. Pokud došlo k chybě během asynchronního připojení, výjimka není vyvolána, dokud EndAppend metoda není 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.

Za normálních okolností se tato metoda dokončí před zápisem záznamu. Pokud chcete zajistit, aby byl záznam zapsán, zadejte ForceFlush příznak pomocí parametru recordAppendOptions nebo volejte metodu Flush .

Platí pro

BeginAppend(ArraySegment<Byte>, SequenceNumber, SequenceNumber, RecordAppendOptions, ReservationCollection, AsyncCallback, Object)

Zahájí asynchronní operaci připojení. Tuto metodu nelze zdědit.

public:
 virtual IAsyncResult ^ BeginAppend(ArraySegment<System::Byte> data, System::IO::Log::SequenceNumber nextUndoRecord, System::IO::Log::SequenceNumber previousRecord, System::IO::Log::RecordAppendOptions recordAppendOptions, System::IO::Log::ReservationCollection ^ reservations, AsyncCallback ^ callback, System::Object ^ state);
public IAsyncResult BeginAppend(ArraySegment<byte> data, System.IO.Log.SequenceNumber nextUndoRecord, System.IO.Log.SequenceNumber previousRecord, System.IO.Log.RecordAppendOptions recordAppendOptions, System.IO.Log.ReservationCollection reservations, AsyncCallback callback, object state);
abstract member BeginAppend : ArraySegment<byte> * System.IO.Log.SequenceNumber * System.IO.Log.SequenceNumber * System.IO.Log.RecordAppendOptions * System.IO.Log.ReservationCollection * AsyncCallback * obj -> IAsyncResult
override this.BeginAppend : ArraySegment<byte> * System.IO.Log.SequenceNumber * System.IO.Log.SequenceNumber * System.IO.Log.RecordAppendOptions * System.IO.Log.ReservationCollection * AsyncCallback * obj -> IAsyncResult
Public Function BeginAppend (data As ArraySegment(Of Byte), nextUndoRecord As SequenceNumber, previousRecord As SequenceNumber, recordAppendOptions As RecordAppendOptions, reservations 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.

nextUndoRecord
SequenceNumber

Pořadové číslo dalšího záznamu v pořadí zadaném uživatelem.

previousRecord
SequenceNumber

Pořadové číslo dalšího záznamu v předchozím pořadí.

recordAppendOptions
RecordAppendOptions

Platná hodnota, která určuje způsob zápisu RecordAppendOptions dat.

reservations
ReservationCollection

A ReservationCollection obsahující rezervaci, která by se měla pro tento záznam použít.

callback
AsyncCallback

Volitelné asynchronní zpětné volání, které se má volat při dokončení připojení.

state
Object

Objekt poskytovaný uživatelem, který rozlišuje tento konkrétní asynchronní přidávací požadavek od jiných požadavků.

Návraty

Jedná se o IAsyncResult asynchronní připojení, které může být stále čekající.

Implementuje

Výjimky

userRecord nebo previousRecord není pro tuto sekvenci platný.

nebo

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

nebo

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

Jeden nebo více argumentů jsou null.

userRecord nebo previousRecord 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í.

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.

Rezervace není dostatečně velká, aby se vešla data do reservationsumístění .

Poznámky

Tuto metodu IAsyncResult byste měli předat EndAppend vrácenou touto metodou, abyste zajistili, že operace připojení byla dokončena a prostředky lze odpovídajícím způsobem uvolnit. Pokud došlo k chybě během asynchronního připojení, výjimka není vyvolána, dokud EndAppend metoda není 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.

Připojený záznam spotřebuje místo, které bylo dříve rezervováno, pomocí rezervace určené parametrem reservations . Pokud připojení proběhne úspěšně, spotřebuje nejmenší oblast rezervace, která může obsahovat data, a tato oblast rezervace se z kolekce odebere.

Za normálních okolností se tato metoda dokončí před zápisem záznamu. Pokud chcete zajistit, aby byl záznam zapsán, zadejte ForceFlush příznak pomocí parametru recordAppendOptions nebo volejte metodu Flush .

Platí pro

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

Zahájí asynchronní operaci připojení. Tuto metodu nelze zdědit.

public:
 virtual IAsyncResult ^ BeginAppend(System::Collections::Generic::IList<ArraySegment<System::Byte>> ^ data, System::IO::Log::SequenceNumber userRecord, System::IO::Log::SequenceNumber previousRecord, System::IO::Log::RecordAppendOptions recordAppendOptions, System::IO::Log::ReservationCollection ^ reservations, AsyncCallback ^ callback, System::Object ^ state);
public IAsyncResult BeginAppend(System.Collections.Generic.IList<ArraySegment<byte>> data, System.IO.Log.SequenceNumber userRecord, System.IO.Log.SequenceNumber previousRecord, System.IO.Log.RecordAppendOptions recordAppendOptions, System.IO.Log.ReservationCollection reservations, AsyncCallback callback, object state);
abstract member BeginAppend : System.Collections.Generic.IList<ArraySegment<byte>> * System.IO.Log.SequenceNumber * System.IO.Log.SequenceNumber * System.IO.Log.RecordAppendOptions * System.IO.Log.ReservationCollection * AsyncCallback * obj -> IAsyncResult
override this.BeginAppend : System.Collections.Generic.IList<ArraySegment<byte>> * System.IO.Log.SequenceNumber * System.IO.Log.SequenceNumber * System.IO.Log.RecordAppendOptions * System.IO.Log.ReservationCollection * AsyncCallback * obj -> IAsyncResult
Public Function BeginAppend (data As IList(Of ArraySegment(Of Byte)), userRecord As SequenceNumber, previousRecord As SequenceNumber, recordAppendOptions As RecordAppendOptions, reservations 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.

userRecord
SequenceNumber

Pořadové číslo dalšího záznamu v pořadí zadaném uživatelem.

previousRecord
SequenceNumber

Pořadové číslo dalšího záznamu v předchozím pořadí.

recordAppendOptions
RecordAppendOptions

Platná hodnota, která určuje způsob zápisu RecordAppendOptions dat.

reservations
ReservationCollection

A ReservationCollection obsahující rezervaci, která by se měla pro tento záznam použít.

callback
AsyncCallback

Volitelné asynchronní zpětné volání, které se má volat při dokončení připojení.

state
Object

Objekt poskytovaný uživatelem, který rozlišuje tento konkrétní asynchronní přidávací požadavek od jiných požadavků.

Návraty

Jedná se o IAsyncResult asynchronní připojení, které může být stále čekající.

Implementuje

Výjimky

userRecord nebo previousRecord není pro tuto sekvenci platný.

nebo

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

nebo

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

Jeden nebo více argumentů jsou null.

userRecord nebo previousRecord 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í.

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.

Rezervace není dostatečně velká, aby se vešla data do reservationsumístění .

Poznámky

Tuto metodu IAsyncResult byste měli předat EndAppend vrácenou touto metodou, abyste zajistili, že operace připojení byla dokončena a prostředky lze odpovídajícím způsobem uvolnit. Pokud došlo k chybě během asynchronního připojení, výjimka není vyvolána, dokud EndAppend metoda není 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.

Připojený záznam spotřebuje místo, které bylo dříve rezervováno, pomocí rezervace určené parametrem reservations . Pokud připojení proběhne úspěšně, spotřebuje nejmenší oblast rezervace, která může obsahovat data, a tato oblast rezervace se z kolekce odebere.

Za normálních okolností se tato metoda dokončí před zápisem záznamu. Pokud chcete zajistit, aby byl záznam zapsán, zadejte ForceFlush příznak pomocí parametru recordAppendOptions nebo volejte metodu Flush .

Platí pro