Lenguaje

IRecordSequence.ReserveAndAppend Método

Definición

Cuando se reemplaza en una clase derivada, realiza automáticamente una única reserva y anexa un registro a la secuencia.

Sobrecargas

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

Cuando se reemplaza en una clase derivada, realiza automáticamente una única reserva y anexa un registro a la secuencia.

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

Cuando se reemplaza en una clase derivada, realiza automáticamente una única reserva y anexa un registro a la secuencia.

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

Cuando se reemplaza en una clase derivada, realiza automáticamente una única reserva y anexa un registro a la secuencia.

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

Parámetros

data
ArraySegment<Byte>

Lista de segmentos de matriz de bytes que se concatenarán y anexarán como registro.

nextUndoRecord
SequenceNumber

Número de secuencia del siguiente registro en el orden especificado por el usuario.

previousRecord
SequenceNumber

Número de secuencia del siguiente registro en orden anterior.

recordAppendOptions
RecordAppendOptions

Valor válido de RecordAppendOptions que especifica cómo se deben escribir los datos.

reservationCollection
ReservationCollection

que ReservationCollection contiene la colección en la que se van a realizar reservas.

reservations
Int64[]

Las reservas que se van a realizar, en bytes.

Devoluciones

Número de secuencia del registro anexado.

Excepciones

Uno o varios argumentos no son válidos.

Error de E/S al anexar el registro.

La secuencia de registros no pudo hacer suficiente espacio libre para contener el nuevo registro o para realizar la reserva.

Se llamó al método después de eliminar la secuencia.

Comentarios

Los datos contenidos en el data parámetro se concatenan en una sola matriz de bytes para anexarse como registro. Sin embargo, no se realiza ninguna disposición para dividir los datos en segmentos de matriz cuando se lee el registro.

Las reservas especificadas se agregan a la colección de reservas proporcionada en una operación atómica con una operación de anexión de registros. Si se produce un error en la anexión, no se reserva ningún espacio.

Normalmente, este método puede completarse antes de que se haya escrito el registro. Para asegurarse de que se ha escrito un registro, especifique la ForceFlush marca mediante el recordAppendOptions parámetro o llame al Flush método .

Se aplica a

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

Cuando se reemplaza en una clase derivada, realiza automáticamente una única reserva y anexa un registro a la secuencia.

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

Parámetros

data
IList<ArraySegment<Byte>>

Lista de segmentos de matriz de bytes que se concatenarán y anexarán como registro.

nextUndoRecord
SequenceNumber

Número de secuencia del siguiente registro en el orden especificado por el usuario.

previousRecord
SequenceNumber

Número de secuencia del siguiente registro en orden anterior.

recordAppendOptions
RecordAppendOptions

Valor válido de RecordAppendOptions que especifica cómo se deben escribir los datos.

reservationCollection
ReservationCollection

Colección de reservas en la que se van a realizar reservas.

reservations
Int64[]

Las reservas que se van a realizar, en bytes.

Devoluciones

Número de secuencia del registro anexado.

Excepciones

Uno o varios argumentos no son válidos.

Error de E/S al anexar el registro.

La secuencia de registros no pudo hacer suficiente espacio libre para contener el nuevo registro o para realizar la reserva.

Se llamó al método después de eliminar la secuencia.

Comentarios

Los datos contenidos en el data parámetro se concatenan en una sola matriz de bytes para anexarse como registro. Sin embargo, no se realiza ninguna disposición para dividir los datos en segmentos de matriz cuando se lee el registro.

Las reservas especificadas se agregan a la colección de reservas proporcionada en una operación atómica con una operación de anexión de registros. Si se produce un error en la anexión, no se reserva ningún espacio.

Normalmente, este método puede completarse antes de que se haya escrito el registro. Para asegurarse de que se ha escrito un registro, especifique la ForceFlush marca mediante el recordAppendOptions parámetro o llame al Flush método .

Se aplica a