IRecordSequence.BeginWriteRestartArea Método

Definição

Quando é sobreposto numa classe derivada, inicia-se uma operação assíncrona de reinício na área de escrita.

Sobrecargas

Name Description
BeginWriteRestartArea(ArraySegment<Byte>, SequenceNumber, ReservationCollection, AsyncCallback, Object)

Quando sobreposto numa classe derivada, inicia-se uma operação de reinício assíncrona de escrita na área, usando espaço previamente reservado na sequência.

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

Quando sobreposto numa classe derivada, inicia-se uma operação de reinício assíncrona de escrita na área, usando espaço previamente reservado na sequência.

BeginWriteRestartArea(ArraySegment<Byte>, SequenceNumber, ReservationCollection, AsyncCallback, Object)

Quando sobreposto numa classe derivada, inicia-se uma operação de reinício assíncrona de escrita na área, usando espaço previamente reservado na sequência.

public:
 IAsyncResult ^ BeginWriteRestartArea(ArraySegment<System::Byte> data, System::IO::Log::SequenceNumber newBaseSequenceNumber, System::IO::Log::ReservationCollection ^ reservation, AsyncCallback ^ callback, System::Object ^ state);
public IAsyncResult BeginWriteRestartArea(ArraySegment<byte> data, System.IO.Log.SequenceNumber newBaseSequenceNumber, System.IO.Log.ReservationCollection reservation, AsyncCallback callback, object state);
abstract member BeginWriteRestartArea : ArraySegment<byte> * System.IO.Log.SequenceNumber * System.IO.Log.ReservationCollection * AsyncCallback * obj -> IAsyncResult
Public Function BeginWriteRestartArea (data As ArraySegment(Of Byte), newBaseSequenceNumber As SequenceNumber, reservation 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.

newBaseSequenceNumber
SequenceNumber

O novo número de sequência base. O número de sequência especificado deve ser maior ou igual ao número de sequência base atual.

reservation
ReservationCollection

A ReservationCollection que contém a reserva que deve ser usada para esta área de reinício.

callback
AsyncCallback

Um callback assíncrono opcional, a ser chamado quando a escrita da área de reinício está concluída.

state
Object

Um objeto fornecido pelo utilizador que distingue este pedido de escrita de área de reinício assíncrono de outros pedidos.

Devoluções

E IAsyncResult que representa a operação de escrita de área de reinício assíncrono, que ainda pode estar pendente.

Observações

Deve passar o IAsyncResult retorno por este método para o EndWriteRestartArea método, para garantir que a operação de escrita na área de reinício terminou e que os recursos podem ser devidamente libertados. Se ocorrer um erro durante uma operação de escrita de área de reinício assíncrona, uma exceção não é lançada até que o EndWriteRestartArea método seja chamado e devolvido IAsyncResult 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.

Quando a operação é concluída com sucesso, o número de sequência base é atualizado. Todos os registos log com números de sequência inferiores ao novo número base de sequência são inacessíveis.

Se a ReservationCollection for especificado, a área de reinício escrito ocupará espaço que já foi previamente reservado, usando uma reserva contida na coleção. Se o método tiver sucesso, irá consumir a menor reserva que possa conter os dados, e essa reserva será removida da coleção.

Se uma sequência de registos tiver sido eliminada, ou se passar um argumento inválido, exceções são lançadas imediatamente dentro desta operação. Erros que ocorreram durante um pedido de adição assíncrono, por exemplo, uma falha de disco durante o pedido de E/S, resultarão em exceções lançadas quando o EndWriteRestartArea método for chamado.

Aplica-se a

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

Quando sobreposto numa classe derivada, inicia-se uma operação de reinício assíncrona de escrita na área, usando espaço previamente reservado na sequência.

public:
 IAsyncResult ^ BeginWriteRestartArea(System::Collections::Generic::IList<ArraySegment<System::Byte>> ^ data, System::IO::Log::SequenceNumber newBaseSequenceNumber, System::IO::Log::ReservationCollection ^ reservation, AsyncCallback ^ callback, System::Object ^ state);
public IAsyncResult BeginWriteRestartArea(System.Collections.Generic.IList<ArraySegment<byte>> data, System.IO.Log.SequenceNumber newBaseSequenceNumber, System.IO.Log.ReservationCollection reservation, AsyncCallback callback, object state);
abstract member BeginWriteRestartArea : System.Collections.Generic.IList<ArraySegment<byte>> * System.IO.Log.SequenceNumber * System.IO.Log.ReservationCollection * AsyncCallback * obj -> IAsyncResult
Public Function BeginWriteRestartArea (data As IList(Of ArraySegment(Of Byte)), newBaseSequenceNumber As SequenceNumber, reservation 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.

newBaseSequenceNumber
SequenceNumber

O novo número de sequência base. O número de sequência especificado deve ser maior ou igual ao número de sequência base atual.

reservation
ReservationCollection

A ReservationCollection que contém a reserva que deve ser usada para esta área de reinício.

callback
AsyncCallback

Um callback assíncrono opcional, a ser chamado quando a escrita da área de reinício está concluída.

state
Object

Um objeto fornecido pelo utilizador que distingue este pedido de escrita de área de reinício assíncrono de outros pedidos.

Devoluções

E IAsyncResult que representa a operação de escrita de área de reinício assíncrono, que ainda pode estar pendente.

Exceções

Um ou mais dos argumentos são inválidos.

Ocorreu um erro de I/O durante a escrita da área de reinício.

A sequência de registos não conseguia criar espaço livre suficiente para conter o novo registo.

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

Observações

Deve passar o IAsyncResult retorno por este método para o EndWriteRestartArea método para garantir que a operação de escrita na área de reinício foi concluída e que os recursos podem ser libertados adequadamente. Se ocorrer um erro durante uma operação de escrita de área de reinício assíncrona, uma exceção não é lançada até que o EndWriteRestartArea método seja chamado e devolvido IAsyncResult 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.

Quando a operação é concluída com sucesso, o número de sequência base é atualizado. Todos os registos log com números de sequência inferiores ao novo número base de sequência são inacessíveis.

Se a ReservationCollection for especificado, a área de reinício escrito ocupará espaço que já foi previamente reservado, usando uma reserva contida na coleção. Se o método tiver sucesso, irá consumir a menor reserva que possa conter os dados, e essa reserva será removida da coleção.

Se uma sequência de registos tiver sido eliminada, ou se passar um argumento inválido, exceções são lançadas imediatamente dentro desta operação. Erros que ocorreram durante um pedido de adição assíncrono, por exemplo, uma falha de disco durante o pedido de E/S, resultarão em exceções lançadas quando o EndWriteRestartArea método for chamado.

Aplica-se a