代码拉取完成,页面将自动刷新
缓存仓库,默认使用内存缓存,而若使用其他缓存请先进行声明
PS: .xxx 为xcache.xxx的简写,作用为避免部分场景下使用别名导入的形式直接
方法 | 作用 |
---|---|
CacheInterfaceExport{} | 内存形缓存结构体,实现有Get和Set两个方法,基于此结构体内的缓存锁,实现有并发锁定 |
.SetCacheTime(t time.Duration) | 设置默认缓存时长 |
.SetCache(c CacheInterface) | 设置缓存的存储方式【接口形式】 |
.Exists(name string) | 判断缓存值是否存在,此处是根据缓存是否为空来判断是否存在的,即内部实现为:.Get(name) == "" |
.Get(name string) | 获取缓存信息 |
.GetString(name string) | 获取缓存信息,等同于.Get |
.GetStruct(key string, val any) | 读取结构体,val传入的值需要为结构体指针,内部为 json.Unmarshal 解析 |
.SetExt(key, val string, t time.Duration) | 设置缓存值 |
.SetGroup(n, key, val string, t time.Duration) | 以分组的形式设置缓存值 |
.Set(key, val string) | 设置缓存值,其内实现逻辑为:.SetExt(key, val, time.Second*60) |
.SetNumber(key string, val any) | 设置数字类型的缓存值,默认时长1分钟 |
.SetStruct(key string, val any) | 设置结构体类型的缓存值,默认时长1分钟 |
.SetStructExt(key string, val any, t time.Duration) | 设置指定时长的缓存值 |
.SetStructGroup(g, key string, val any) | 设置结构体缓存【带分组】 |
.SetStruct(key string, val any) | 设置结构体缓存【不带分组】 |
.Clear() | 清空全部缓存【此处清空group中存在的所有缓存,而非清除所有】 |
.Remove(name string) | 清除单个缓存 |
.ClearGroup(name string) | 清除某组缓存 |
// 声明缓存结构体
type cache struct{}
// 实现GET方法
func (c *cache) Get(name string) string {
// 实现逻辑
return ""
}
// 实现SET方法
func (c *cache) Set(name string, val string, t time.Duration) {
}
// 设置该缓存到本依赖项中
xcache.SetCache(&cache{})
此处可能存在不合适展示的内容,页面不予展示。您可通过相关编辑功能自查并修改。
如您确认内容无涉及 不当用语 / 纯广告导流 / 暴力 / 低俗色情 / 侵权 / 盗版 / 虚假 / 无价值内容或违法国家有关法律法规的内容,可点击提交进行申诉,我们将尽快为您处理。