ReservationCollection.Remove(Int64) 메서드
정의
중요
일부 정보는 릴리스되기 전에 상당 부분 수정될 수 있는 시험판 제품과 관련이 있습니다. Microsoft는 여기에 제공된 정보에 대해 어떠한 명시적이거나 묵시적인 보증도 하지 않습니다.
지정된 크기의 예약을 해제합니다(있는 경우). 이 메서드는 상속할 수 없습니다.
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);