ReservationCollection.Remove(Int64) Método
Definição
Importante
Algumas informações se referem a produtos de pré-lançamento que podem ser substancialmente modificados antes do lançamento. A Microsoft não oferece garantias, expressas ou implícitas, das informações aqui fornecidas.
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);