ReservationCollection.Remove(Int64) 메서드

정의

지정된 크기의 예약을 해제합니다(있는 경우). 이 메서드는 상속할 수 없습니다.

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

매개 변수

item
Int64

릴리스할 예약의 크기입니다.

반품

true지정된 크기의 예약을 찾아 제거하면 이고, 그렇지 않으면 . false

구현

예외

지정된 예약 컬렉션에서 제공된 레코드에 맞게 충분히 큰 예약을 찾을 수 없습니다.

보관 스냅샷을 만들 때 I/O 오류가 발생합니다.

시퀀스가 삭제된 후 메서드가 호출되었습니다.

프로그램 실행을 계속하기 위한 메모리가 부족합니다.

레코드 시퀀스가 가득 찼습니다.

지정된 로그 저장소에 대한 액세스는 운영 체제에서 거부됩니다.

예제

다음 예제에서는 수동으로 예약하는 방법을 보여줍니다. 이 작업은 CLFS 기반 LogRecordSequence 클래스를 사용하는 경우에만 수행할 수 있습니다.

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);

적용 대상