Example #1
0
 internal virtual void Remove(CacheRecord record, RemoveExpectation removeExpectation)
 {
     Monitor.Enter(this);
     try
     {
         bool flag = cache.Remove(record.GetFuture());
         D.Assert(removeExpectation == RemoveExpectation.Unknown ||
                  removeExpectation == RemoveExpectation.Present == flag,
                  "Remove didn't meet expectations. That could suggest a mutating hash.");
         resourceCounter.crement(-1);
         record.DropReference();
     }
     finally
     {
         Monitor.Exit(this);
     }
 }
Example #2
0
 internal override void Remove(CacheRecord record, RemoveExpectation removeExpectation)
 {
     base.Remove(record, removeExpectation);
 }
Example #3
0
 internal override void Remove(CacheRecord record, RemoveExpectation removeExpectation)
 {
     memoryUsed -= ((SizedCacheRecord)record).memoryCharge;
     lruQueue.Remove(record);
     base.Remove(record, removeExpectation);
 }