ReservationCollection.Remove(Int64) 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.
Liberta uma reserva do tamanho especificado, caso tenha sido feita uma. Este 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 libertar.
Devoluções
true se uma reserva do tamanho especificado fosse encontrada e removida; caso contrário, false.
Implementações
Exceções
Nenhuma reserva suficientemente grande para caber no registo fornecido pode ser encontrada na coleção de reservas especificada.
Ocorre um erro de I/O ao criar o snapshot do arquivo.
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.
O acesso ao armazenamento de registos especificado é negado pelo sistema operativo.
Exemplos
O exemplo seguinte mostra como fazer uma reserva manualmente. Note que esta tarefa só pode ser realizada quando se utiliza a classe baseada LogRecordSequence em 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);