FileRecordSequence.BeginAppend 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.
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.