コード例 #1
0
 public TValue this[TKey key]
 {
     get
     {
         DestoryExpiredItems(key);
         return(innerDictionary[key].Value);
     }
     set
     {
         DestoryExpiredItems(key);
         innerDictionary[key] = new ExpiringValueHolder <TValue>(value, expiryTimeSpan);
     }
 }
コード例 #2
0
 public void Set(TKey key, TValue value)
 {
     lock (_Lock)
     {
         if (innerDictionary.ContainsKey(key))
         {
             innerDictionary[key] = new ExpiringValueHolder <TValue>(value);
         }
         else
         {
             innerDictionary.Add(key, new ExpiringValueHolder <TValue>(value));
         }
     }
     DestoryExpiredItems(key);
 }
コード例 #3
0
 public void Set(TKey key, TValue value, TimeSpan TTL)
 {
     lock (_Lock)
     {
         if (innerDictionary.ContainsKey(key))
         {
             innerDictionary[key] = new ExpiringValueHolder <TValue>(value, (TTL == null ? expiryTimeSpan : TTL));
         }
         else
         {
             innerDictionary.Add(key, new ExpiringValueHolder <TValue>(value, (TTL == null ? expiryTimeSpan : TTL)));
         }
     }
     DestoryExpiredItems(key);
 }