Compartilhar via


ReservationCollection.Remove(Int64) Método

Definição

Liberará uma reserva do tamanho especificado, se uma tiver sido feita. Esse método não pode ser herdado.

public:
 virtual bool Remove(long item);
public bool Remove (long item);
abstract member Remove : int64 -> bool
override this.Remove : int64 -> bool
Public Function Remove (item As Long) As Boolean

Parâmetros

item
Int64

O tamanho da reserva a ser liberada.

Retornos

true se uma reserva do tamanho especificado tiver sido encontrada e removida; caso contrário, false.

Implementações

Exceções

Nenhuma reserva grande o suficiente para se ajustar ao registro fornecido pode ser encontrada na coleção da reserva especificada.

Ocorrerá um erro de E/S ao criar o instantâneo do arquivo.

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.

O acesso ao repositório de log especificado é negado pelo sistema operacional.

Exemplos

O exemplo a seguir mostra como fazer uma reserva manualmente. Observe que essa tarefa só pode ser executada ao usar a classe baseada em LogRecordSequence CLFS.

ReservationCollection reservations = recordSequence.CreateReservationCollection();  
reservations.Add(lengthOfUndoRecord);  
try  
{  
   recordSequence.Append(recordData, userSqn, previousSqn, RecordAppendOptions.None);  
}  
catch (Exception)  
{  
   reservations.Remove(lengthOfUndoRecord);  
   throw;  
}  

recordSequence.Append(undoRecordData, userSqn, previousSqn, RecordAppendOptions.ForceFlush, reservations);  

Aplica-se a