This provides the lru
package which implements a fixed-size
thread safe LRU cache with expire feature. It is based on golang-lru.
Full docs are available on Godoc
Using the LRU is very simple:
l, _ := NewARCWithExpire(128, 30*time.Second)
for i := 0; i < 256; i++ {
l.Add(i, nil)
}
if l.Len() != 128 {
panic(fmt.Sprintf("bad len: %v", l.Len()))
}