Comparteix a través de


FileRecordSequence.ReserveAndAppend Método

Definición

Realiza automáticamente una reserva única y anexa un registro a la secuencia.

Sobrecargas

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

Realiza automáticamente una reserva única y anexa un registro a la secuencia. Este método no se puede heredar.

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

Realiza automáticamente una reserva única y anexa un registro a la secuencia. Este método no se puede heredar.

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

Realiza automáticamente una reserva única y anexa un registro a la secuencia. Este método no se puede heredar.

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

Parámetros

data
IList<ArraySegment<Byte>>

Una lista de segmentos de la matriz de bytes que se concatenarán y anexarán como el registro.

nextUndoRecord
SequenceNumber

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

previousRecord
SequenceNumber

El número de secuencia del registro siguiente en orden anterior.

recordAppendOptions
RecordAppendOptions

Un valor válido de RecordAppendOptions que especifica cómo se deberían escribir los datos.

reservationCollection
ReservationCollection

La colección de reservas en la que realizar las reservas.

reservations
Int64[]

Las reservas que se han de realizar, en bytes.

Devoluciones

Número de secuencia del registro de entrada anexado.

Implementaciones

Excepciones

Uno o varios argumentos tienen el valor null.

Uno o varios argumentos están fuera del intervalo.

Esta secuencia del registro no creó reservations.

La operación no se puede realizar porque la secuencia del registro se abrió con acceso de solo lectura.

La solicitud no se pudo realizar debido a una excepción de E/S inesperada.

Se llamó al método una vez eliminada la secuencia.

No hay bastante memoria para continuar la ejecución del programa.

La secuencia del registro está completa.

Comentarios

Los datos contenidos en el parámetro data se concatenarán en una matriz de bytes única para anexarlos como el registro. Sin embargo, no se ha realizado ninguna disposición para dividir los datode nuevo en los segmentos de la 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 anexado de registro. Si no se produce el anexado, 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 marca ForceFlush utilizando el parámetro recordAppendOptions o llame al método Flush.

Se aplica a

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

Realiza automáticamente una reserva única y anexa un registro a la secuencia. Este método no se puede heredar.

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

Parámetros

data
ArraySegment<Byte>

Una lista de segmentos de la matriz de bytes que se concatenarán y anexarán como el registro.

nextUndoRecord
SequenceNumber

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

previousRecord
SequenceNumber

El número de secuencia del registro siguiente en orden anterior.

recordAppendOptions
RecordAppendOptions

Un valor válido de RecordAppendOptions que especifica cómo se deberían escribir los datos.

reservationCollection
ReservationCollection

ReservationCollection en el que se contiene la colección para realizar las reservas.

reservations
Int64[]

Las reservas que se han de realizar, en bytes.

Devoluciones

Número de secuencia del registro de entrada anexado.

Implementaciones

Excepciones

Uno o varios argumentos tienen el valor null.

Uno o varios argumentos están fuera del intervalo.

Esta secuencia del registro no creó reservations.

La operación no se puede realizar porque la secuencia del registro se abrió con acceso de solo lectura.

La solicitud no se pudo realizar debido a una excepción de E/S inesperada.

Se llamó al método una vez eliminada la secuencia.

No hay bastante memoria para continuar la ejecución del programa.

La secuencia del registro está completa.

Comentarios

Los datos contenidos en el parámetro data se concatenarán en una matriz de bytes única para anexarlos como el registro. Sin embargo, no se ha realizado ninguna disposición para dividir los datode nuevo en los segmentos de la 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 anexado de registro. Si no se produce el anexado, 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 marca ForceFlush utilizando el parámetro recordAppendOptions o llame al método Flush.

Se aplica a