Files
gf/.example/os/gcache/usage_lru.go

29 lines
519 B
Go
Raw Normal View History

package main
import (
2019-04-03 00:03:46 +08:00
"fmt"
"time"
2019-07-29 21:01:19 +08:00
"github.com/gogf/gf/os/gcache"
)
func main() {
2019-04-03 00:03:46 +08:00
// 设置LRU淘汰数量
c := gcache.New(2)
2019-04-03 00:03:46 +08:00
// 添加10个元素不过期
for i := 0; i < 10; i++ {
c.Set(i, i, 0)
}
fmt.Println(c.Size())
fmt.Println(c.Keys())
2019-04-03 00:03:46 +08:00
// 读取键名1保证该键名是优先保留
fmt.Println(c.Get(1))
2018-09-19 09:47:50 +08:00
2019-04-03 00:03:46 +08:00
// 等待一定时间后(默认1秒检查一次),元素会被按照从旧到新的顺序进行淘汰
time.Sleep(2 * time.Second)
fmt.Println(c.Size())
fmt.Println(c.Keys())
}