public unsafe void CreateSpace(uint blockCount = 24, uint blockSize = DefaultBlockSize) { Space = InstantiateSpace(blockCount, blockSize); RawBlockManager.DebugBackdrop((byte*) Space.Pointer,(uint) Space.Capacity); RawBlockManager.Initialize(Space, BlockCount = blockCount,BlockSize = blockSize); BlockManager = SingleInstanceRawBlockManager.Create(Space); }
private static VirtualDisk _wrapVirtualDisk(IRawPersistenceSpace space) { var blockManager = SingleInstanceRawBlockManager.Create(space); return SingleInstanceVirtualDiskImpl.Create(blockManager, new AscendingOffsetLockingPolicy()); }
protected virtual void Dispose(bool disposing) { if (disposing) { if (Space != null) { Space.Dispose(); Space = null; } // ReSharper disable SuspiciousTypeConversion.Global var disposable = BlockManager as IDisposable; // ReSharper restore SuspiciousTypeConversion.Global if (disposable != null) { disposable.Dispose(); } BlockManager = null; } }
public RawBlockManager(IRawPersistenceSpace space) { _space = space; }