FileRecordSequence.BeginAppend Método

Definição

Inicia uma operação de acréscimo assíncrona.

Sobrecargas

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

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

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

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

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

Inicia uma operação de acréscimo assíncrona. Esse método não pode ser herdado.

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

Inicia uma operação de acréscimo assíncrona. Esse método não pode ser herdado.

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

Inicia uma operação de acréscimo assíncrona usando o espaço previamente reservado na sequência. Esse 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 matriz de bytes que serão concatenados e acrescentados como o registro.

nextUndoRecord
SequenceNumber

O número de sequência do próximo registro na ordem especificada pelo usuário.

previousRecord
SequenceNumber

O número de sequência do próximo registro na ordem anterior.

recordAppendOptions
RecordAppendOptions

Um valor RecordAppendOptions válido que especifica como os dados devem ser gravados.

reservations
ReservationCollection

Um ReservationCollection que contém a reserva que deve ser usada para este registro.

callback
AsyncCallback

Um retorno de chamada assíncrono opcional, a ser chamado quando o acréscimo for concluído.

state
Object

Um objeto fornecido pelo usuário que distingue essa solicitação de acréscimo assíncrona específica de outras solicitações.

Retornos

Um IAsyncResult que representa o acréscimo 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 intervalo.

reservations não foi criado por essa sequência de registros.

A operação não pode ser executada porque a sequência de registros foi aberta com acesso somente leitura.

A solicitação não pode ser executada devido a uma exceção inesperada de E/S.

O método foi chamado depois que a sequência foi descartada.

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

A sequência de registros está cheia.

Nenhuma reserva grande o suficiente para caber data pode ser encontrada em reservations.

Comentários

Você deve passar o IAsyncResult retornado por esse método para o EndAppend método, para garantir que a operação de acréscimo tenha sido concluída e que os recursos possam ser liberados adequadamente. Se ocorrer um erro durante um acréscimo assíncrono, uma exceção não será gerada até que o EndAppend método seja chamado com o IAsyncResult retornado por esse método.

Os dados contidos no data parâmetro serão concatenados em uma única matriz de bytes para acrescentar como o registro. No entanto, nenhuma provisão é feita para dividir dados novamente em segmentos de matriz quando o registro é lido.

O registro acrescentado consumirá espaço reservado anteriormente, usando uma reserva especificada pelo reservations parâmetro. Se o acréscimo for bem-sucedido, ele consumirá a menor área de reserva que pode conter os dados e essa área de reserva será removida da coleção.

Normalmente, esse método é concluído antes da gravação do registro. Para garantir que um registro tenha sido gravado, especifique o ForceFlush sinalizador 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 acréscimo assíncrona usando o espaço previamente reservado na sequência. Esse 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 matriz de bytes que serão concatenados e acrescentados como o registro.

nextUndoRecord
SequenceNumber

O número de sequência do próximo registro na ordem especificada pelo usuário.

previousRecord
SequenceNumber

O número de sequência do próximo registro na ordem anterior.

recordAppendOptions
RecordAppendOptions

Um valor RecordAppendOptions válido que especifica como os dados devem ser gravados.

reservations
ReservationCollection

Um ReservationCollection que contém a reserva que deve ser usada para este registro.

callback
AsyncCallback

Um retorno de chamada assíncrono opcional, a ser chamado quando o acréscimo for concluído.

state
Object

Um objeto fornecido pelo usuário que distingue essa solicitação de acréscimo assíncrona específica de outras solicitações.

Retornos

Um IAsyncResult que representa o acréscimo 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 intervalo.

reservations não foi criado por essa sequência de registros.

A operação não pode ser executada porque a sequência de registros foi aberta com acesso somente leitura.

A solicitação não pode ser executada devido a uma exceção inesperada de E/S.

O método foi chamado depois que a sequência foi descartada.

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

A sequência de registros está cheia.

Nenhuma reserva grande o suficiente para caber data pode ser encontrada em reservations.

Comentários

Você deve passar o IAsyncResult retornado por esse método para o EndAppend método, para garantir que a operação de acréscimo tenha sido concluída e que os recursos possam ser liberados adequadamente. Se ocorrer um erro durante um acréscimo assíncrono, uma exceção não será gerada até que o EndAppend método seja chamado com o IAsyncResult retornado por esse método.

Os dados contidos no data parâmetro serão concatenados em uma única matriz de bytes para acrescentar como o registro. No entanto, nenhuma provisão é feita para dividir dados novamente em segmentos de matriz quando o registro é lido.

O registro acrescentado consumirá espaço reservado anteriormente, usando uma reserva especificada pelo reservations parâmetro. Se o acréscimo for bem-sucedido, ele consumirá a menor área de reserva que pode conter os dados e essa área de reserva será removida da coleção.

Normalmente, esse método é concluído antes da gravação do registro. Para garantir que um registro tenha sido gravado, especifique o ForceFlush sinalizador 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 acréscimo assíncrona. Esse 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 matriz de bytes que serão concatenados e acrescentados como o registro.

nextUndoRecord
SequenceNumber

O número de sequência do próximo registro na ordem especificada pelo usuário.

previousRecord
SequenceNumber

O número de sequência do próximo registro na ordem anterior.

recordAppendOptions
RecordAppendOptions

Um valor RecordAppendOptions válido que especifica como os dados devem ser gravados.

callback
AsyncCallback

Um retorno de chamada assíncrono opcional, a ser chamado quando o acréscimo for concluído.

state
Object

Um objeto fornecido pelo usuário que distingue essa solicitação de acréscimo assíncrona específica de outras solicitações.

Retornos

Um IAsyncResult que representa o acréscimo 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 intervalo.

A operação não pode ser executada porque a sequência de registros foi aberta com acesso somente leitura.

A solicitação não pode ser executada devido a uma exceção inesperada de E/S.

O método foi chamado depois que a sequência foi descartada.

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

A sequência de registros está cheia.

Comentários

Você deve passar o IAsyncResult retornado por esse método para o EndAppend método, para garantir que a operação de acréscimo tenha sido concluída e que os recursos possam ser liberados adequadamente. Se ocorrer um erro durante um acréscimo assíncrono, uma exceção não será gerada até que o EndAppend método seja chamado com o IAsyncResult retornado por esse método.

Os dados contidos no data parâmetro serão concatenados em uma única matriz de bytes para acrescentar como o registro. No entanto, nenhuma provisão é feita para dividir dados novamente em segmentos de matriz quando o registro é lido.

Normalmente, esse método é concluído antes da gravação do registro. Para garantir que um registro tenha sido gravado, especifique o ForceFlush sinalizador 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 acréscimo assíncrona. Esse 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 matriz de bytes que serão concatenados e acrescentados como o registro.

nextUndoRecord
SequenceNumber

O número de sequência do próximo registro na ordem especificada pelo usuário.

previousRecord
SequenceNumber

O número de sequência do próximo registro na ordem anterior.

recordAppendOptions
RecordAppendOptions

Um valor RecordAppendOptions válido que especifica como os dados devem ser gravados.

callback
AsyncCallback

Um retorno de chamada assíncrono opcional, a ser chamado quando o acréscimo for concluído.

state
Object

Um objeto fornecido pelo usuário que distingue essa solicitação de acréscimo assíncrona específica de outras solicitações.

Retornos

Um IAsyncResult que representa o acréscimo 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 intervalo.

A operação não pode ser executada porque a sequência de registros foi aberta com acesso somente leitura.

A solicitação não pode ser executada devido a uma exceção inesperada de E/S.

O método foi chamado depois que a sequência foi descartada.

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

A sequência de registros está cheia.

Comentários

Você deve passar o IAsyncResult retornado por esse método para o EndAppend método, para garantir que a operação de acréscimo tenha sido concluída e que os recursos possam ser liberados adequadamente. Se ocorrer um erro durante um acréscimo assíncrono, uma exceção não será gerada até que o EndAppend método seja chamado com o IAsyncResult retornado por esse método.

Os dados contidos no data parâmetro serão concatenados em uma única matriz de bytes para acrescentar como o registro. No entanto, nenhuma provisão é feita para dividir dados novamente em segmentos de matriz quando o registro é lido.

Normalmente, esse método é concluído antes da gravação do registro. Para garantir que um registro tenha sido gravado, especifique o ForceFlush sinalizador usando o recordAppendOptions parâmetro ou chame o Flush método.

Aplica-se a