IRecordSequence.ReserveAndAppend Metoda
Definice
Důležité
Některé informace platí pro předběžně vydaný produkt, který se může zásadně změnit, než ho výrobce nebo autor vydá. Microsoft neposkytuje žádné záruky, výslovné ani předpokládané, týkající se zde uváděných informací.
Při přepsání v odvozené třídě automaticky vytvoří jednu rezervaci a připojí k sekvenci záznam.
Přetížení
ReserveAndAppend(ArraySegment<Byte>, SequenceNumber, SequenceNumber, RecordAppendOptions, ReservationCollection, Int64[]) |
Při přepsání v odvozené třídě automaticky vytvoří jednu rezervaci a připojí k sekvenci záznam. |
ReserveAndAppend(IList<ArraySegment<Byte>>, SequenceNumber, SequenceNumber, RecordAppendOptions, ReservationCollection, Int64[]) |
Při přepsání v odvozené třídě automaticky vytvoří jednu rezervaci a připojí k sekvenci záznam. |
ReserveAndAppend(ArraySegment<Byte>, SequenceNumber, SequenceNumber, RecordAppendOptions, ReservationCollection, Int64[])
Při přepsání v odvozené třídě automaticky vytvoří jednu rezervaci a připojí k sekvenci záznam.
public:
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
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 určuje RecordAppendOptions , jak se mají data zapsat.
- reservationCollection
- ReservationCollection
A ReservationCollection obsahující kolekci, ve které se mají provádět rezervace.
- reservations
- Int64[]
Rezervace, které se mají provést, v bajtech.
Návraty
Pořadové číslo připojeného záznamu protokolu.
Výjimky
Jeden nebo více argumentů je neplatných.
Při připojování záznamu došlo k vstupně-výstupní chybě.
V sekvenci záznamů se nepodařilo vytvořit dostatek volného místa pro nový záznam nebo pro vytvoření rezervace.
Metoda byla volána po odstranění sekvence.
Poznámky
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.
Zadané rezervace se přidají do zadané kolekce rezervací v atomické operaci pomocí operace připojení záznamu. Pokud se připojení nezdaří, nevyhradí se žádné místo.
Za normálních okolností se tato metoda může dokončit 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
ReserveAndAppend(IList<ArraySegment<Byte>>, SequenceNumber, SequenceNumber, RecordAppendOptions, ReservationCollection, Int64[])
Při přepsání v odvozené třídě automaticky vytvoří jednu rezervaci a připojí k sekvenci záznam.
public:
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
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 určuje RecordAppendOptions , jak se mají data zapsat.
- reservationCollection
- ReservationCollection
Kolekce rezervací, ve které se mají provádět rezervace.
- reservations
- Int64[]
Rezervace, které se mají provést, v bajtech.
Návraty
Pořadové číslo připojeného záznamu protokolu.
Výjimky
Jeden nebo více argumentů je neplatných.
Při připojování záznamu došlo k vstupně-výstupní chybě.
V sekvenci záznamů se nepodařilo vytvořit dostatek volného místa pro nový záznam nebo pro vytvoření rezervace.
Metoda byla volána po odstranění sekvence.
Poznámky
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.
Zadané rezervace se přidají do zadané kolekce rezervací v atomické operaci pomocí operace připojení záznamu. Pokud se připojení nezdaří, nevyhradí se žádné místo.
Za normálních okolností se tato metoda může dokončit před zápisem záznamu. Pokud chcete zajistit zápis záznamu, zadejte ForceFlush příznak pomocí parametru recordAppendOptions
nebo volejte metodu Flush .