public bool ShouldDiscard(TimeStampedLruItem <K, V> item) { if (DateTime.UtcNow - item.TimeStamp > this.timeToLive) { return(true); } return(false); }
public ItemDestination RouteCold(TimeStampedLruItem <K, V> item) { if (this.ShouldDiscard(item)) { return(ItemDestination.Remove); } if (item.WasAccessed) { return(ItemDestination.Warm); } return(ItemDestination.Remove); }
public void Touch(TimeStampedLruItem <K, V> item) { item.WasAccessed = true; }