ReservationCollection.Remove(Int64) Metodo
Definizione
Importante
Alcune informazioni sono relative alla release non definitiva del prodotto, che potrebbe subire modifiche significative prima della release definitiva. Microsoft non riconosce alcuna garanzia, espressa o implicita, in merito alle informazioni qui fornite.
Rilascia una prenotazione delle dimensioni specificate, se ne è stata effettuata una. Questo metodo non può essere ereditato.
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
Parametri
- item
- Int64
Dimensioni della prenotazione da rilasciare.
Valori restituiti
true se è stata trovata e rimossa una prenotazione delle dimensioni specificate; in caso contrario, false.
Implementazioni
Eccezioni
Nessuna prenotazione sufficientemente grande da adattare il record specificato è disponibile nella raccolta di prenotazioni specificata.
Si verifica un errore di I/O durante la creazione dello snapshot di archivio.
Il metodo è stato chiamato dopo che la sequenza è stata eliminata.
Memoria insufficiente per continuare l'esecuzione del programma.
La sequenza di record è piena.
L'accesso per l'archivio log specificato viene negato dal sistema operativo.
Esempio
Nell'esempio seguente viene illustrato come effettuare manualmente una prenotazione. Si noti che questa attività può essere eseguita solo quando si usa la classe basata su 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);