示例#1
0
 /// <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);
     });
 }
示例#2
0
 public void Dispose()
 {
     Locker.Invoke(() =>
     {
         MruManager.Dispose();
     });
 }
示例#3
0
 public void Flush()
 {
     Locker.Invoke(() =>
     {
         MruManager.Flush();
     });
 }
示例#4
0
 public object Remove(TKey key)
 {
     lock (Locker)
     {
         return(MruManager.Remove(key));
     }
 }
示例#5
0
 public void Dispose()
 {
     lock (Locker)
     {
         MruManager.Dispose();
     }
 }
示例#6
0
 public void Clear()
 {
     lock (Locker)
     {
         MruManager.Clear();
     }
 }
示例#7
0
 public bool Contains(TKey key)
 {
     lock (Locker)
     {
         return(MruManager.Contains(key));
     }
 }
示例#8
0
 /// <summary>
 /// Remove in tail.
 /// </summary>
 /// <returns></returns>
 public MruItem <TKey, TValue> RemoveInTail()
 {
     lock (Locker)
     {
         return(MruManager.RemoveInTail());
     }
 }
示例#9
0
 public void Add(TKey key, TValue value)
 {
     lock (Locker)
     {
         MruManager.Add(key, value);
     }
 }
示例#10
0
 /// <summary>
 /// Peek in tail.
 /// </summary>
 /// <returns></returns>
 public MruItem <TKey, TValue> PeekInTail()
 {
     lock (Locker)
     {
         return(MruManager.PeekInTail());
     }
 }
示例#11
0
 /// <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);
     }
 }
示例#12
0
 public void Flush()
 {
     lock (Locker)
     {
         MruManager.Flush();
     }
 }
示例#13
0
 /// <summary>
 /// Remove in tail.
 /// </summary>
 /// <returns></returns>
 public MruItem <TKey, TValue> RemoveInTail()
 {
     return(Locker.Invoke(() =>
     {
         return MruManager.RemoveInTail();
     }));
 }
示例#14
0
 public void Remove(ICollection <TKey> keys)
 {
     Locker.Invoke(() =>
     {
         MruManager.Remove(keys);
     });
 }
示例#15
0
 public object Remove(TKey key)
 {
     return(Locker.Invoke(() =>
     {
         return MruManager.Remove(key);
     }));
 }
示例#16
0
 public void Remove(ICollection <TKey> keys)
 {
     lock (Locker)
     {
         MruManager.Remove(keys);
     }
 }
示例#17
0
 public bool Contains(TKey key)
 {
     return(Locker.Invoke(() =>
     {
         return MruManager.Contains(key);
     }));
 }
示例#18
0
 public void Add(TKey key, TValue value)
 {
     Locker.Invoke(() =>
     {
         MruManager.Add(key, value);
     });
 }
示例#19
0
 public void Clear()
 {
     Locker.Invoke(() =>
     {
         MruManager.Clear();
     });
 }
示例#20
0
 public ConcurrentMruManager(int mruMinCapacity, int mruMaxCapacity, IComparer <TKey> comparer)
 {
     MruManager = new MruManager <TKey, TValue>(mruMinCapacity, mruMaxCapacity, comparer);
 }