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

32 lines
663 B
Go
Raw Normal View History

2018-09-17 09:52:24 +08:00
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"
2018-09-17 09:52:24 +08:00
)
func main() {
2019-04-03 00:03:46 +08:00
// 当键名不存在时写入设置过期时间1000毫秒
gcache.SetIfNotExist("k1", "v1", 1000)
2018-09-17 09:52:24 +08:00
2019-04-03 00:03:46 +08:00
// 打印当前的键名列表
fmt.Println(gcache.Keys())
2018-09-17 09:52:24 +08:00
2019-04-03 00:03:46 +08:00
// 打印当前的键值列表
fmt.Println(gcache.Values())
2018-09-17 09:52:24 +08:00
2019-04-03 00:03:46 +08:00
// 获取指定键值,如果不存在时写入,并返回键值
fmt.Println(gcache.GetOrSet("k2", "v2", 0))
2018-09-17 09:52:24 +08:00
2019-04-03 00:03:46 +08:00
// 打印当前的键值对
fmt.Println(gcache.Data())
2018-09-17 09:52:24 +08:00
2019-04-03 00:03:46 +08:00
// 等待1秒以便k1:v1自动过期
time.Sleep(time.Second)
2018-09-17 09:52:24 +08:00
2019-04-03 00:03:46 +08:00
// 再次打印当前的键值对发现k1:v1已经过期只剩下k2:v2
fmt.Println(gcache.Data())
}