/// <summary> /// Binds the MRU Client to the DataDriver. DataDriver is used /// for persistence of cached Objects to target store /// </summary> /// <param name="parent"></param> public void SetDataStores(IMruClient parent) { Locker.Invoke(() => { MruManager.SetDataStores(parent); }); }
public void Dispose() { Locker.Invoke(() => { MruManager.Dispose(); }); }
public void Flush() { Locker.Invoke(() => { MruManager.Flush(); }); }
public object Remove(TKey key) { lock (Locker) { return(MruManager.Remove(key)); } }
public void Dispose() { lock (Locker) { MruManager.Dispose(); } }
public void Clear() { lock (Locker) { MruManager.Clear(); } }
public bool Contains(TKey key) { lock (Locker) { return(MruManager.Contains(key)); } }
/// <summary> /// Remove in tail. /// </summary> /// <returns></returns> public MruItem <TKey, TValue> RemoveInTail() { lock (Locker) { return(MruManager.RemoveInTail()); } }
public void Add(TKey key, TValue value) { lock (Locker) { MruManager.Add(key, value); } }
/// <summary> /// Peek in tail. /// </summary> /// <returns></returns> public MruItem <TKey, TValue> PeekInTail() { lock (Locker) { return(MruManager.PeekInTail()); } }
/// <summary> /// Binds the MRU Client to the DataDriver. DataDriver is used /// for persistence of cached Objects to target store /// </summary> /// <param name="parent"></param> public void SetDataStores(IMruClient parent) { lock (Locker) { MruManager.SetDataStores(parent); } }
public void Flush() { lock (Locker) { MruManager.Flush(); } }
/// <summary> /// Remove in tail. /// </summary> /// <returns></returns> public MruItem <TKey, TValue> RemoveInTail() { return(Locker.Invoke(() => { return MruManager.RemoveInTail(); })); }
public void Remove(ICollection <TKey> keys) { Locker.Invoke(() => { MruManager.Remove(keys); }); }
public object Remove(TKey key) { return(Locker.Invoke(() => { return MruManager.Remove(key); })); }
public void Remove(ICollection <TKey> keys) { lock (Locker) { MruManager.Remove(keys); } }
public bool Contains(TKey key) { return(Locker.Invoke(() => { return MruManager.Contains(key); })); }
public void Add(TKey key, TValue value) { Locker.Invoke(() => { MruManager.Add(key, value); }); }
public void Clear() { Locker.Invoke(() => { MruManager.Clear(); }); }
public ConcurrentMruManager(int mruMinCapacity, int mruMaxCapacity, IComparer <TKey> comparer) { MruManager = new MruManager <TKey, TValue>(mruMinCapacity, mruMaxCapacity, comparer); }