github.com/songzhibin97/go-baseutils@v0.0.2-0.20240302024150-487d8ce9c082/app/bcache/README.md (about)

     1  # bcache
     2  
     3  缓存组件
     4  
     5  ## API
     6  - Set 设置缓存,带失效时间
     7  - SetDefault 设置缓存,使用默认的缓存时间
     8  - SetNoExpire 设置缓存,不过期
     9  - SetIfAbsent 设置缓存,如果不存在设置成功返回bool
    10  - Replace 替换缓存,如果存在设置成功返回bool
    11  - Delete 删除缓存
    12  - Get 获取缓存,返回对应V以及bool
    13  - GetWithExpire 获取缓存,返回对应V以及bool以及过期时间
    14  - Count 获取缓存数量
    15  - Clear 清空缓存
    16  - Load 从文件加载对象
    17  - Export 导出到文件
    18  - Marshal 
    19  - Unmarshal
    20  
    21  ## EXAMPLE
    22  ```go
    23  package main
    24  
    25  import (
    26  	"fmt"
    27  	"github.com/songzhibin97/go-baseutils/app/bcache"
    28  	"github.com/songzhibin97/go-baseutils/base/bcomparator"
    29  	"time"
    30  )
    31  
    32  func main() {
    33  	c := bcache.New[int, int](bcomparator.IntComparator())
    34  	c.Set(1, 1, 5*time.Second)
    35  	fmt.Println(c.Get(1)) // 1,true
    36  	time.Sleep(5 * time.Second)
    37  	fmt.Println(c.Get(1)) // 0,false
    38  }
    39  
    40  ```