/// <summary> /// Create SpanByte FasterKV backend /// </summary> /// <param name="store"></param> /// <param name="kvBroker"></param> /// <param name="broker"></param> /// <param name="tryRecover"></param> /// <param name="maxSizeSettings"></param> public SpanByteFasterKVProvider(FasterKV <SpanByte, SpanByte> store, SubscribeKVBroker <SpanByte, SpanByte, SpanByte, IKeyInputSerializer <SpanByte, SpanByte> > kvBroker = null, SubscribeBroker <SpanByte, SpanByte, IKeySerializer <SpanByte> > broker = null, bool tryRecover = true, MaxSizeSettings maxSizeSettings = default) { this.storeWrapper = new StoreWrapper <SpanByte, SpanByte>(store, tryRecover); this.kvBroker = kvBroker; this.broker = broker; this.serializer = new SpanByteServerSerializer(); this.maxSizeSettings = maxSizeSettings ?? new MaxSizeSettings(); }
/// <summary> /// Create SpanByte FasterKV backend /// </summary> /// <param name="store"></param> /// <param name="kvBroker"></param> /// <param name="broker"></param> /// <param name="recoverStore"></param> /// <param name="maxSizeSettings"></param> public SpanByteFasterKVProvider(FasterKV <SpanByte, SpanByte> store, SubscribeKVBroker <SpanByte, SpanByte, SpanByte, IKeyInputSerializer <SpanByte, SpanByte> > kvBroker = null, SubscribeBroker <SpanByte, SpanByte, IKeySerializer <SpanByte> > broker = null, bool recoverStore = false, MaxSizeSettings maxSizeSettings = default) { this.store = store; if (recoverStore) { try { store.Recover(); } catch { } } this.kvBroker = kvBroker; this.broker = broker; this.serializer = new SpanByteServerSerializer(); this.maxSizeSettings = maxSizeSettings ?? new MaxSizeSettings(); }
/// <summary> /// Create SpanByte FasterKV backend /// </summary> /// <param name="store"></param> /// <param name="maxSizeSettings"></param> public SpanByteFasterKVProvider(FasterKV <SpanByte, SpanByte> store, MaxSizeSettings maxSizeSettings = default) { this.store = store; this.serializer = new SpanByteServerSerializer(); this.maxSizeSettings = maxSizeSettings ?? new MaxSizeSettings(); }