Sdílet prostřednictvím


FileRecordSequence.BeginAppend Metoda

Definice

Spustí asynchronní operaci připojení.

Přetížení

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

Zahájí asynchronní operaci připojení pomocí mezery, která byla dříve vyhrazena v sekvenci. Tuto metodu nelze dědit.

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

Zahájí asynchronní operaci připojení pomocí mezery, která byla dříve vyhrazena v sekvenci. Tuto metodu nelze dědit.

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

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

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

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

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

Zahájí asynchronní operaci připojení pomocí mezery, která byla dříve vyhrazena v sekvenci. Tuto metodu nelze dědit.

public:
 virtual IAsyncResult ^ BeginAppend(System::Collections::Generic::IList<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 (System.Collections.Generic.IList<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 : 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)), nextUndoRecord 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.

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 určuje RecordAppendOptions , jak se mají data zapsat.

reservations
ReservationCollection

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

callback
AsyncCallback

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

state
Object

Uživatelem zadaný objekt, který odlišuje tento konkrétní asynchronní přidávací požadavek od ostatních požadavků.

Návraty

Představuje IAsyncResult asynchronní připojení, které může stále čekat na vyřízení.

Implementuje

Výjimky

Jeden nebo více argumentů je null.

Nejméně jeden argument je mimo rozsah.

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

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 metodu IAsyncResult vrácenou touto metodou EndAppend , aby se zajistilo, že se operace připojení dokončila 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 je 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.

Připojený záznam bude spotřebovávat 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 odebere z kolekce.

Za normálních okolností se tato metoda dokončí před zápisem záznamu. Pokud chcete zajistit zápis záznamu, 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í pomocí mezery, která byla dříve vyhrazena v sekvenci. Tuto metodu nelze dě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 určuje RecordAppendOptions , jak se mají data zapsat.

reservations
ReservationCollection

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

callback
AsyncCallback

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

state
Object

Uživatelem zadaný objekt, který odlišuje tento konkrétní asynchronní přidávací požadavek od ostatních požadavků.

Návraty

Představuje IAsyncResult asynchronní připojení, které může stále čekat na vyřízení.

Implementuje

Výjimky

Jeden nebo více argumentů je null.

Nejméně jeden argument je mimo rozsah.

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

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 metodu IAsyncResult vrácenou touto metodou EndAppend , aby se zajistilo, že se operace připojení dokončila 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 je 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.

Připojený záznam bude spotřebovávat 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 odebere z kolekce.

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

Platí pro

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

Zahájí asynchronní operaci připojení. Tuto metodu nelze dě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 určuje RecordAppendOptions , jak se mají data zapsat.

callback
AsyncCallback

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

state
Object

Uživatelem zadaný objekt, který odlišuje tento konkrétní asynchronní přidávací požadavek od ostatních požadavků.

Návraty

Představuje IAsyncResult asynchronní připojení, které může stále čekat na vyřízení.

Implementuje

Výjimky

Jeden nebo více argumentů je null.

Nejméně jeden argument je mimo rozsah.

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

Poznámky

Měli byste předat metodu IAsyncResult vrácenou touto metodou EndAppend , aby se zajistilo, že se operace připojení dokončila 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 je 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.

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

Platí pro

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

Spustí asynchronní operaci připojení. Tuto metodu nelze dědit.

public:
 virtual IAsyncResult ^ BeginAppend(System::Collections::Generic::IList<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 (System.Collections.Generic.IList<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 : 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)), nextUndoRecord 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.

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 RecordAppendOptions , která určuje způsob zápisu dat.

callback
AsyncCallback

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

state
Object

Objekt zadaný uživatelem, který odlišuje tento konkrétní asynchronní požadavek připojení od jiných požadavků.

Návraty

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

Implementuje

Výjimky

Jeden nebo více argumentů je null.

Nejméně jeden argument je mimo rozsah.

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.

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

Sekvence záznamů je plná.

Poznámky

Vrácené touto metodou EndAppend byste měli předat IAsyncResult metodě, 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í, nevyvolá se výjimka, dokud EndAppend není volána metoda s IAsyncResult vrácenou touto metodou.

Data obsažená v parametru data budou zřetězena do pole s jedním bajtem pro připojení jako záznamu. Při čtení záznamu však není provedeno žádné ustanovení pro rozdělení dat zpět na segmenty pole.

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

Platí pro