FileRecordSequence.ReserveAndAppend Metoda

Definice

Automaticky vytvoří jednu rezervaci a připojí k sekvenci záznam.

Přetížení

Name Description
ReserveAndAppend(IList<ArraySegment<Byte>>, SequenceNumber, SequenceNumber, RecordAppendOptions, ReservationCollection, Int64[])

Automaticky vytvoří jednu rezervaci a připojí k sekvenci záznam. Tuto metodu nelze zdědit.

ReserveAndAppend(ArraySegment<Byte>, SequenceNumber, SequenceNumber, RecordAppendOptions, ReservationCollection, Int64[])

Automaticky vytvoří jednu rezervaci a připojí k sekvenci záznam. Tuto metodu nelze zdědit.

ReserveAndAppend(IList<ArraySegment<Byte>>, SequenceNumber, SequenceNumber, RecordAppendOptions, ReservationCollection, Int64[])

Automaticky vytvoří jednu rezervaci a připojí k sekvenci záznam. Tuto metodu nelze zdědit.

public:
 virtual System::IO::Log::SequenceNumber ReserveAndAppend(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 ^ reservationCollection, ... cli::array <long> ^ reservations);
public System.IO.Log.SequenceNumber ReserveAndAppend(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 reservationCollection, params long[] reservations);
abstract member ReserveAndAppend : System.Collections.Generic.IList<ArraySegment<byte>> * System.IO.Log.SequenceNumber * System.IO.Log.SequenceNumber * System.IO.Log.RecordAppendOptions * System.IO.Log.ReservationCollection * int64[] -> System.IO.Log.SequenceNumber
override this.ReserveAndAppend : System.Collections.Generic.IList<ArraySegment<byte>> * System.IO.Log.SequenceNumber * System.IO.Log.SequenceNumber * System.IO.Log.RecordAppendOptions * System.IO.Log.ReservationCollection * int64[] -> System.IO.Log.SequenceNumber
Public Function ReserveAndAppend (data As IList(Of ArraySegment(Of Byte)), nextUndoRecord As SequenceNumber, previousRecord As SequenceNumber, recordAppendOptions As RecordAppendOptions, reservationCollection As ReservationCollection, ParamArray reservations As Long()) As SequenceNumber

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

reservationCollection
ReservationCollection

Kolekce rezervací, ve které se mají rezervace provádět.

reservations
Int64[]

Rezervace, které se mají provést, v bajtech.

Návraty

Pořadové číslo připojeného záznamu protokolu.

Implementuje

Výjimky

Jeden nebo více argumentů jsou null.

Jeden nebo více 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í operace.

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

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.

Zadané rezervace se přidají do poskytnuté kolekce rezervací v atomické operaci s operací připojení záznamu. Pokud připojení selže, není vyhrazeno žádné místo.

Za normálních okolností se tato metoda může dokončit 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

ReserveAndAppend(ArraySegment<Byte>, SequenceNumber, SequenceNumber, RecordAppendOptions, ReservationCollection, Int64[])

Automaticky vytvoří jednu rezervaci a připojí k sekvenci záznam. Tuto metodu nelze zdědit.

public:
 virtual System::IO::Log::SequenceNumber ReserveAndAppend(ArraySegment<System::Byte> data, System::IO::Log::SequenceNumber nextUndoRecord, System::IO::Log::SequenceNumber previousRecord, System::IO::Log::RecordAppendOptions recordAppendOptions, System::IO::Log::ReservationCollection ^ reservationCollection, ... cli::array <long> ^ reservations);
public System.IO.Log.SequenceNumber ReserveAndAppend(ArraySegment<byte> data, System.IO.Log.SequenceNumber nextUndoRecord, System.IO.Log.SequenceNumber previousRecord, System.IO.Log.RecordAppendOptions recordAppendOptions, System.IO.Log.ReservationCollection reservationCollection, params long[] reservations);
abstract member ReserveAndAppend : ArraySegment<byte> * System.IO.Log.SequenceNumber * System.IO.Log.SequenceNumber * System.IO.Log.RecordAppendOptions * System.IO.Log.ReservationCollection * int64[] -> System.IO.Log.SequenceNumber
override this.ReserveAndAppend : ArraySegment<byte> * System.IO.Log.SequenceNumber * System.IO.Log.SequenceNumber * System.IO.Log.RecordAppendOptions * System.IO.Log.ReservationCollection * int64[] -> System.IO.Log.SequenceNumber
Public Function ReserveAndAppend (data As ArraySegment(Of Byte), nextUndoRecord As SequenceNumber, previousRecord As SequenceNumber, recordAppendOptions As RecordAppendOptions, reservationCollection As ReservationCollection, ParamArray reservations As Long()) As SequenceNumber

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.

reservationCollection
ReservationCollection

A ReservationCollection obsahující kolekci, ve které se mají rezervace provádět.

reservations
Int64[]

Rezervace, které se mají provést, v bajtech.

Návraty

Pořadové číslo připojeného záznamu protokolu.

Implementuje

Výjimky

Jeden nebo více argumentů jsou null.

Jeden nebo více 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í operace.

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

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.

Zadané rezervace se přidají do poskytnuté kolekce rezervací v atomické operaci s operací připojení záznamu. Pokud připojení selže, není vyhrazeno žádné místo.

Za normálních okolností se tato metoda může dokončit 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