in shardedlru.go [172:181]
func (lru *ShardedLRU[K, V]) GetAndRefresh(key K, lifetime time.Duration) (value V, ok bool) {
hash := lru.hash(key)
shard := (hash >> 16) & lru.mask
lru.mus[shard].Lock()
value, ok = lru.lrus[shard].getAndRefresh(hash, key, lifetime)
lru.mus[shard].Unlock()
return
}