github.com/gogf/gf@v1.16.9/.example/os/gcache/usage_senior.go (about)

     1  package main
     2  
     3  import (
     4  	"fmt"
     5  	"time"
     6  
     7  	"github.com/gogf/gf/os/gcache"
     8  )
     9  
    10  func main() {
    11  	// 当键名不存在时写入,设置过期时间1000毫秒
    12  	gcache.SetIfNotExist("k1", "v1", 1000)
    13  
    14  	// 打印当前的键名列表
    15  	fmt.Println(gcache.Keys())
    16  
    17  	// 打印当前的键值列表
    18  	fmt.Println(gcache.Values())
    19  
    20  	// 获取指定键值,如果不存在时写入,并返回键值
    21  	fmt.Println(gcache.GetOrSet("k2", "v2", 0))
    22  
    23  	// 打印当前的键值对
    24  	fmt.Println(gcache.Data())
    25  
    26  	// 等待1秒,以便k1:v1自动过期
    27  	time.Sleep(time.Second)
    28  
    29  	// 再次打印当前的键值对,发现k1:v1已经过期,只剩下k2:v2
    30  	fmt.Println(gcache.Data())
    31  }