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