ReservationCollection.Remove(Int64) Methode
Definition
Wichtig
Einige Informationen beziehen sich auf Vorabversionen, die vor dem Release ggf. grundlegend überarbeitet werden. Microsoft übernimmt hinsichtlich der hier bereitgestellten Informationen keine Gewährleistungen, seien sie ausdrücklich oder konkludent.
Gibt eine Reservierung der angegebenen Größe frei, wenn eine Reservierung vorgenommen wurde. Diese Methode kann nicht vererbt werden.
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
Parameter
- item
- Int64
Die Größe der freizugebenden Reservierung.
Gibt zurück
true
, wenn eine Reservierung der angegebenen Größe gefunden und entfernt wurde; andernfalls false
.
Implementiert
Ausnahmen
In der angegebenen Reservierungsauflistung wurde keine Reservierung gefunden, die groß genug für den angegebenen Datensatz ist.
Ein E/A-Fehler tritt auf, wenn die Archivmomentaufnahme erstellt wird.
Die Methode wurde aufgerufen, nachdem die Sequenz verworfen wurde.
Der Arbeitsspeicher reicht nicht aus, um die Ausführung des Programms fortzusetzen.
Die Datensatzsequenz ist voll.
Der Zugriff auf den angegebenen Protokollspeicher wird vom Betriebssystem verweigert.
Beispiele
Das folgende Beispiel stellt dar, wie Sie manuell eine Reservierung vornehmen. Beachten Sie, dass diese Aufgabe nur bei Verwendung der CLFS-basierten LogRecordSequence-Klasse ausgeführt werden kann.
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);