public virtual Slot AllocateSlot(int length) { if (length <= 0) { throw new ArgumentException(); } if (_freespaceManager != null && _freespaceManager.IsStarted()) { Slot slot = _freespaceManager.AllocateSlot(length); if (slot != null) { if (DTrace.enabled) { DTrace.GetSlot.LogLength(slot.Address(), slot.Length()); } return(slot); } while (GrowDatabaseByConfiguredSize()) { slot = _freespaceManager.AllocateSlot(length); if (slot != null) { if (DTrace.enabled) { DTrace.GetSlot.LogLength(slot.Address(), slot.Length()); } return(slot); } } } Slot appendedSlot = AppendBytes(length); if (DTrace.enabled) { DTrace.GetSlot.LogLength(appendedSlot.Address(), appendedSlot.Length()); } return(appendedSlot); }
public virtual bool IsStarted() { return(_delegate.IsStarted()); }