IRecordSequence.ReserveAndAppend Método
Definição
Importante
Algumas informações dizem respeito a um produto pré-lançado que pode ser substancialmente modificado antes de ser lançado. A Microsoft não faz garantias, de forma expressa ou implícita, em relação à informação aqui apresentada.
Quando sobrescrito numa classe derivada, faz automaticamente uma única reserva e acrescenta um registo à sequência.
Sobrecargas
| Name | Description |
|---|---|
| ReserveAndAppend(ArraySegment<Byte>, SequenceNumber, SequenceNumber, RecordAppendOptions, ReservationCollection, Int64[]) |
Quando sobrescrito numa classe derivada, faz automaticamente uma única reserva e acrescenta um registo à sequência. |
| ReserveAndAppend(IList<ArraySegment<Byte>>, SequenceNumber, SequenceNumber, RecordAppendOptions, ReservationCollection, Int64[]) |
Quando sobrescrito numa classe derivada, faz automaticamente uma única reserva e acrescenta um registo à sequência. |
ReserveAndAppend(ArraySegment<Byte>, SequenceNumber, SequenceNumber, RecordAppendOptions, ReservationCollection, Int64[])
Quando sobrescrito numa classe derivada, faz automaticamente uma única reserva e acrescenta um registo à sequência.
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>
Uma lista de segmentos de array de bytes que serão concatenados e adicionados como registo.
- nextUndoRecord
- SequenceNumber
O número de sequência do registo seguinte na ordem especificada pelo utilizador.
- previousRecord
- SequenceNumber
O número de sequência do próximo registo na ordem Anterior.
- recordAppendOptions
- RecordAppendOptions
Um valor válido de RecordAppendOptions isso especifica como os dados devem ser escritos.
- reservationCollection
- ReservationCollection
A ReservationCollection que contém a coleção para fazer reservas.
- reservations
- Int64[]
As reservas a fazer, em bytes.
Devoluções
O número de sequência do registo de registo anexado.
Exceções
Um ou mais dos argumentos são inválidos.
Ocorreu um erro de I/O durante a anexação do registo.
A sequência de registos não conseguiu abrir espaço livre suficiente para conter o novo registo, nem para fazer a reserva.
O método era chamado depois de a sequência ter sido eliminada.
Observações
Os dados contidos no data parâmetro serão concatenados num array de um único byte para serem adicionados como registo. No entanto, não é prevista a divisão dos dados em segmentos de array quando o registo é lido.
As reservas especificadas são adicionadas à coleção de reservas fornecida numa operação atómica com uma operação de anexação de registos. Se o anexo falhar, não há espaço reservado.
Normalmente, este método pode concluir-se antes de o registo ter sido escrito. Para garantir que um registo foi escrito, especifique o ForceFlush flag usando o recordAppendOptions parâmetro ou chame o Flush método.
Aplica-se a
ReserveAndAppend(IList<ArraySegment<Byte>>, SequenceNumber, SequenceNumber, RecordAppendOptions, ReservationCollection, Int64[])
Quando sobrescrito numa classe derivada, faz automaticamente uma única reserva e acrescenta um registo à sequência.
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>>
Uma lista de segmentos de array de bytes que serão concatenados e adicionados como registo.
- nextUndoRecord
- SequenceNumber
O número de sequência do registo seguinte na ordem especificada pelo utilizador.
- previousRecord
- SequenceNumber
O número de sequência do próximo registo na ordem Anterior.
- recordAppendOptions
- RecordAppendOptions
Um valor válido de RecordAppendOptions isso especifica como os dados devem ser escritos.
- reservationCollection
- ReservationCollection
A recolha de reservas para fazer reservas em.
- reservations
- Int64[]
As reservas a fazer, em bytes.
Devoluções
O número de sequência do registo de registo anexado.
Exceções
Um ou mais dos argumentos são inválidos.
Ocorreu um erro de I/O durante a anexação do registo.
A sequência de registos não conseguiu abrir espaço livre suficiente para conter o novo registo, nem para fazer a reserva.
O método era chamado depois de a sequência ter sido eliminada.
Observações
Os dados contidos no data parâmetro serão concatenados num array de um único byte para serem adicionados como registo. No entanto, não é prevista a divisão dos dados em segmentos de array quando o registo é lido.
As reservas especificadas são adicionadas à coleção de reservas fornecida numa operação atómica com uma operação de anexação de registos. Se o anexo falhar, não há espaço reservado.
Normalmente, este método pode concluir-se antes de o registo ter sido escrito. Para garantir que um registo foi escrito, especifique o ForceFlush flag usando o recordAppendOptions parâmetro ou chame o Flush método.