FileRecordSequence.BeginAppend Método

Definição

Inicia uma operação de anexação assíncrona.

Sobrecargas

Name Description
BeginAppend(IList<ArraySegment<Byte>>, SequenceNumber, SequenceNumber, RecordAppendOptions, ReservationCollection, AsyncCallback, Object)

Inicia uma operação de adição assíncrona usando espaço previamente reservado na sequência. Este método não pode ser herdado.

BeginAppend(ArraySegment<Byte>, SequenceNumber, SequenceNumber, RecordAppendOptions, ReservationCollection, AsyncCallback, Object)

Inicia uma operação de adição assíncrona usando espaço previamente reservado na sequência. Este método não pode ser herdado.

BeginAppend(ArraySegment<Byte>, SequenceNumber, SequenceNumber, RecordAppendOptions, AsyncCallback, Object)

Inicia uma operação de anexação assíncrona. Este método não pode ser herdado.

BeginAppend(IList<ArraySegment<Byte>>, SequenceNumber, SequenceNumber, RecordAppendOptions, AsyncCallback, Object)

Inicia uma operação de anexação assíncrona. Este método não pode ser herdado.

BeginAppend(IList<ArraySegment<Byte>>, SequenceNumber, SequenceNumber, RecordAppendOptions, ReservationCollection, AsyncCallback, Object)

Inicia uma operação de adição assíncrona usando espaço previamente reservado na sequência. Este método não pode ser herdado.

public:
 virtual IAsyncResult ^ BeginAppend(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 ^ reservations, AsyncCallback ^ callback, System::Object ^ state);
public IAsyncResult BeginAppend(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 reservations, AsyncCallback callback, object state);
abstract member BeginAppend : System.Collections.Generic.IList<ArraySegment<byte>> * System.IO.Log.SequenceNumber * System.IO.Log.SequenceNumber * System.IO.Log.RecordAppendOptions * System.IO.Log.ReservationCollection * AsyncCallback * obj -> IAsyncResult
override this.BeginAppend : System.Collections.Generic.IList<ArraySegment<byte>> * System.IO.Log.SequenceNumber * System.IO.Log.SequenceNumber * System.IO.Log.RecordAppendOptions * System.IO.Log.ReservationCollection * AsyncCallback * obj -> IAsyncResult
Public Function BeginAppend (data As IList(Of ArraySegment(Of Byte)), nextUndoRecord As SequenceNumber, previousRecord As SequenceNumber, recordAppendOptions As RecordAppendOptions, reservations As ReservationCollection, callback As AsyncCallback, state As Object) As IAsyncResult

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.

reservations
ReservationCollection

A ReservationCollection que contém a reserva que deve ser usada para este registo.

callback
AsyncCallback

Um callback assíncrono opcional, a ser chamado quando o anexo estiver concluído.

state
Object

Um objeto fornecido pelo utilizador que distingue este pedido de adição assíncrono particular de outros pedidos.

Devoluções

Um IAsyncResult que representa o anexo assíncrono, que ainda pode estar pendente.

Implementações

Exceções

Um ou mais dos argumentos são null.

Um ou mais dos argumentos estão fora do alcance.

reservations não foi criado por esta sequência de registos.

A operação não pode ser realizada porque a sequência de registos foi aberta com acesso apenas de leitura.

O pedido não pode ser realizado devido a uma exceção inesperada de I/O.

O método era chamado depois de a sequência ter sido eliminada.

Não há memória suficiente para continuar a execução do programa.

A sequência de discos está cheia.

Não se encontra nenhuma reserva suficientemente grande para caber data em reservations.

Observações

Deve passar o IAsyncResult retorno por este método para o EndAppend método, para garantir que a operação de anexação foi concluída e que os recursos podem ser libertados adequadamente. Se ocorrer um erro durante uma adição assíncrona, uma exceção não é lançada até que o EndAppend método seja chamado com o IAsyncResult retorno por este método.

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.

O registo anexado irá ocupar espaço previamente reservado, usando uma reserva especificada pelo reservations parâmetro. Se o anexo for bem-sucedido, irá consumir a menor área de reserva que possa conter os dados, e essa área será removida da coleção.

Normalmente, este método conclui-se antes do 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

BeginAppend(ArraySegment<Byte>, SequenceNumber, SequenceNumber, RecordAppendOptions, ReservationCollection, AsyncCallback, Object)

Inicia uma operação de adição assíncrona usando espaço previamente reservado na sequência. Este método não pode ser herdado.

public:
 virtual IAsyncResult ^ BeginAppend(ArraySegment<System::Byte> data, System::IO::Log::SequenceNumber nextUndoRecord, System::IO::Log::SequenceNumber previousRecord, System::IO::Log::RecordAppendOptions recordAppendOptions, System::IO::Log::ReservationCollection ^ reservations, AsyncCallback ^ callback, System::Object ^ state);
public IAsyncResult BeginAppend(ArraySegment<byte> data, System.IO.Log.SequenceNumber nextUndoRecord, System.IO.Log.SequenceNumber previousRecord, System.IO.Log.RecordAppendOptions recordAppendOptions, System.IO.Log.ReservationCollection reservations, AsyncCallback callback, object state);
abstract member BeginAppend : ArraySegment<byte> * System.IO.Log.SequenceNumber * System.IO.Log.SequenceNumber * System.IO.Log.RecordAppendOptions * System.IO.Log.ReservationCollection * AsyncCallback * obj -> IAsyncResult
override this.BeginAppend : ArraySegment<byte> * System.IO.Log.SequenceNumber * System.IO.Log.SequenceNumber * System.IO.Log.RecordAppendOptions * System.IO.Log.ReservationCollection * AsyncCallback * obj -> IAsyncResult
Public Function BeginAppend (data As ArraySegment(Of Byte), nextUndoRecord As SequenceNumber, previousRecord As SequenceNumber, recordAppendOptions As RecordAppendOptions, reservations As ReservationCollection, callback As AsyncCallback, state As Object) As IAsyncResult

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.

reservations
ReservationCollection

A ReservationCollection que contém a reserva que deve ser usada para este registo.

callback
AsyncCallback

Um callback assíncrono opcional, a ser chamado quando o anexo estiver concluído.

state
Object

Um objeto fornecido pelo utilizador que distingue este pedido de adição assíncrono particular de outros pedidos.

Devoluções

Um IAsyncResult que representa o anexo assíncrono, que ainda pode estar pendente.

Implementações

Exceções

Um ou mais dos argumentos são null.

Um ou mais dos argumentos estão fora do alcance.

reservations não foi criado por esta sequência de registos.

A operação não pode ser realizada porque a sequência de registos foi aberta com acesso apenas de leitura.

O pedido não pode ser realizado devido a uma exceção inesperada de I/O.

O método era chamado depois de a sequência ter sido eliminada.

Não há memória suficiente para continuar a execução do programa.

A sequência de discos está cheia.

Não se encontra nenhuma reserva suficientemente grande para caber data em reservations.

Observações

Deve passar o IAsyncResult retorno por este método para o EndAppend método, para garantir que a operação de anexação foi concluída e que os recursos podem ser libertados adequadamente. Se ocorrer um erro durante uma adição assíncrona, uma exceção não é lançada até que o EndAppend método seja chamado com o IAsyncResult retorno por este método.

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.

O registo anexado irá ocupar espaço previamente reservado, usando uma reserva especificada pelo reservations parâmetro. Se o anexo for bem-sucedido, irá consumir a menor área de reserva que possa conter os dados, e essa área será removida da coleção.

Normalmente, este método conclui-se antes do 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

BeginAppend(ArraySegment<Byte>, SequenceNumber, SequenceNumber, RecordAppendOptions, AsyncCallback, Object)

Inicia uma operação de anexação assíncrona. Este método não pode ser herdado.

public:
 virtual IAsyncResult ^ BeginAppend(ArraySegment<System::Byte> data, System::IO::Log::SequenceNumber nextUndoRecord, System::IO::Log::SequenceNumber previousRecord, System::IO::Log::RecordAppendOptions recordAppendOptions, AsyncCallback ^ callback, System::Object ^ state);
public IAsyncResult BeginAppend(ArraySegment<byte> data, System.IO.Log.SequenceNumber nextUndoRecord, System.IO.Log.SequenceNumber previousRecord, System.IO.Log.RecordAppendOptions recordAppendOptions, AsyncCallback callback, object state);
abstract member BeginAppend : ArraySegment<byte> * System.IO.Log.SequenceNumber * System.IO.Log.SequenceNumber * System.IO.Log.RecordAppendOptions * AsyncCallback * obj -> IAsyncResult
override this.BeginAppend : ArraySegment<byte> * System.IO.Log.SequenceNumber * System.IO.Log.SequenceNumber * System.IO.Log.RecordAppendOptions * AsyncCallback * obj -> IAsyncResult
Public Function BeginAppend (data As ArraySegment(Of Byte), nextUndoRecord As SequenceNumber, previousRecord As SequenceNumber, recordAppendOptions As RecordAppendOptions, callback As AsyncCallback, state As Object) As IAsyncResult

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.

callback
AsyncCallback

Um callback assíncrono opcional, a ser chamado quando o anexo estiver concluído.

state
Object

Um objeto fornecido pelo utilizador que distingue este pedido de adição assíncrono particular de outros pedidos.

Devoluções

Um IAsyncResult que representa o anexo assíncrono, que ainda pode estar pendente.

Implementações

Exceções

Um ou mais dos argumentos são null.

Um ou mais dos argumentos estão fora do alcance.

A operação não pode ser realizada porque a sequência de registos foi aberta com acesso apenas de leitura.

O pedido não pode ser realizado devido a uma exceção inesperada de I/O.

O método era chamado depois de a sequência ter sido eliminada.

Não há memória suficiente para continuar a execução do programa.

A sequência de discos está cheia.

Observações

Deve passar o IAsyncResult retorno por este método para o EndAppend método, para garantir que a operação de anexação foi concluída e que os recursos podem ser libertados adequadamente. Se ocorrer um erro durante uma adição assíncrona, uma exceção não é lançada até que o EndAppend método seja chamado com o IAsyncResult retorno por este método.

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.

Normalmente, este método conclui-se antes do 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

BeginAppend(IList<ArraySegment<Byte>>, SequenceNumber, SequenceNumber, RecordAppendOptions, AsyncCallback, Object)

Inicia uma operação de anexação assíncrona. Este método não pode ser herdado.

public:
 virtual IAsyncResult ^ BeginAppend(System::Collections::Generic::IList<ArraySegment<System::Byte>> ^ data, System::IO::Log::SequenceNumber nextUndoRecord, System::IO::Log::SequenceNumber previousRecord, System::IO::Log::RecordAppendOptions recordAppendOptions, AsyncCallback ^ callback, System::Object ^ state);
public IAsyncResult BeginAppend(System.Collections.Generic.IList<ArraySegment<byte>> data, System.IO.Log.SequenceNumber nextUndoRecord, System.IO.Log.SequenceNumber previousRecord, System.IO.Log.RecordAppendOptions recordAppendOptions, AsyncCallback callback, object state);
abstract member BeginAppend : System.Collections.Generic.IList<ArraySegment<byte>> * System.IO.Log.SequenceNumber * System.IO.Log.SequenceNumber * System.IO.Log.RecordAppendOptions * AsyncCallback * obj -> IAsyncResult
override this.BeginAppend : System.Collections.Generic.IList<ArraySegment<byte>> * System.IO.Log.SequenceNumber * System.IO.Log.SequenceNumber * System.IO.Log.RecordAppendOptions * AsyncCallback * obj -> IAsyncResult
Public Function BeginAppend (data As IList(Of ArraySegment(Of Byte)), nextUndoRecord As SequenceNumber, previousRecord As SequenceNumber, recordAppendOptions As RecordAppendOptions, callback As AsyncCallback, state As Object) As IAsyncResult

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.

callback
AsyncCallback

Um callback assíncrono opcional, a ser chamado quando o anexo estiver concluído.

state
Object

Um objeto fornecido pelo utilizador que distingue este pedido de adição assíncrono particular de outros pedidos.

Devoluções

Um IAsyncResult que representa o anexo assíncrono, que ainda pode estar pendente.

Implementações

Exceções

Um ou mais dos argumentos são null.

Um ou mais dos argumentos estão fora do alcance.

A operação não pode ser realizada porque a sequência de registos foi aberta com acesso apenas de leitura.

O pedido não pode ser realizado devido a uma exceção inesperada de I/O.

O método era chamado depois de a sequência ter sido eliminada.

Não há memória suficiente para continuar a execução do programa.

A sequência de discos está cheia.

Observações

Deve passar o IAsyncResult retorno por este método para o EndAppend método, para garantir que a operação de anexação foi concluída e que os recursos podem ser libertados adequadamente. Se ocorrer um erro durante uma adição assíncrona, uma exceção não é lançada até que o EndAppend método seja chamado com o IAsyncResult retorno por este método.

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.

Normalmente, este método conclui-se antes do 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