IRecordSequence.ReserveAndAppend Metodo
Definizione
Importante
Alcune informazioni sono relative alla release non definitiva del prodotto, che potrebbe subire modifiche significative prima della release definitiva. Microsoft non riconosce alcuna garanzia, espressa o implicita, in merito alle informazioni qui fornite.
Quando sottoposto a override in una classe derivata, crea automaticamente una singola prenotazione e aggiunge un record alla sequenza.
Overload
| Nome | Descrizione |
|---|---|
| ReserveAndAppend(ArraySegment<Byte>, SequenceNumber, SequenceNumber, RecordAppendOptions, ReservationCollection, Int64[]) |
Quando sottoposto a override in una classe derivata, crea automaticamente una singola prenotazione e aggiunge un record alla sequenza. |
| ReserveAndAppend(IList<ArraySegment<Byte>>, SequenceNumber, SequenceNumber, RecordAppendOptions, ReservationCollection, Int64[]) |
Quando sottoposto a override in una classe derivata, crea automaticamente una singola prenotazione e aggiunge un record alla sequenza. |
ReserveAndAppend(ArraySegment<Byte>, SequenceNumber, SequenceNumber, RecordAppendOptions, ReservationCollection, Int64[])
Quando sottoposto a override in una classe derivata, crea automaticamente una singola prenotazione e aggiunge un record alla sequenza.
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
Parametri
- data
- ArraySegment<Byte>
Elenco di segmenti di matrice di byte che verranno concatenati e accodati come record.
- nextUndoRecord
- SequenceNumber
Numero di sequenza del record successivo nell'ordine specificato dall'utente.
- previousRecord
- SequenceNumber
Numero di sequenza del record successivo nell'ordine precedente.
- recordAppendOptions
- RecordAppendOptions
Valore valido di che specifica la modalità di RecordAppendOptions scrittura dei dati.
- reservationCollection
- ReservationCollection
Oggetto ReservationCollection contenente la raccolta in cui effettuare prenotazioni.
- reservations
- Int64[]
Prenotazioni da effettuare, in byte.
Valori restituiti
Numero di sequenza del record di log accodato.
Eccezioni
Uno o più argomenti non sono validi.
Errore di I/O durante l'aggiunta del record.
La sequenza di record non è riuscita a liberare spazio sufficiente per contenere il nuovo record o per effettuare la prenotazione.
Il metodo è stato chiamato dopo che la sequenza è stata eliminata.
Commenti
I dati contenuti nel data parametro verranno concatenati in una singola matrice di byte per l'aggiunta come record. Tuttavia, non viene effettuato alcun provisioning per la suddivisione dei dati in segmenti di matrice quando il record viene letto.
Le prenotazioni specificate vengono aggiunte alla raccolta di prenotazioni fornita in un'operazione atomica con un'operazione di accodamento di record. Se l'accodamento non riesce, non viene riservato alcuno spazio.
In genere, questo metodo può essere completato prima della scrittura del record. Per assicurarsi che sia stato scritto un record, specificare il ForceFlush flag usando il recordAppendOptions parametro o chiamare il Flush metodo .
Si applica a
ReserveAndAppend(IList<ArraySegment<Byte>>, SequenceNumber, SequenceNumber, RecordAppendOptions, ReservationCollection, Int64[])
Quando sottoposto a override in una classe derivata, crea automaticamente una singola prenotazione e aggiunge un record alla sequenza.
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
Parametri
- data
- IList<ArraySegment<Byte>>
Elenco di segmenti di matrice di byte che verranno concatenati e accodati come record.
- nextUndoRecord
- SequenceNumber
Numero di sequenza del record successivo nell'ordine specificato dall'utente.
- previousRecord
- SequenceNumber
Numero di sequenza del record successivo nell'ordine precedente.
- recordAppendOptions
- RecordAppendOptions
Valore valido di che specifica la modalità di RecordAppendOptions scrittura dei dati.
- reservationCollection
- ReservationCollection
Raccolta di prenotazioni in cui effettuare prenotazioni.
- reservations
- Int64[]
Prenotazioni da effettuare, in byte.
Valori restituiti
Numero di sequenza del record di log accodato.
Eccezioni
Uno o più argomenti non sono validi.
Errore di I/O durante l'aggiunta del record.
La sequenza di record non è riuscita a liberare spazio sufficiente per contenere il nuovo record o per effettuare la prenotazione.
Il metodo è stato chiamato dopo che la sequenza è stata eliminata.
Commenti
I dati contenuti nel data parametro verranno concatenati in una singola matrice di byte per l'aggiunta come record. Tuttavia, non viene effettuato alcun provisioning per la suddivisione dei dati in segmenti di matrice quando il record viene letto.
Le prenotazioni specificate vengono aggiunte alla raccolta di prenotazioni fornita in un'operazione atomica con un'operazione di accodamento di record. Se l'accodamento non riesce, non viene riservato alcuno spazio.
In genere, questo metodo può essere completato prima della scrittura del record. Per assicurarsi che sia stato scritto un record, specificare il ForceFlush flag usando il recordAppendOptions parametro o chiamare il Flush metodo .