Ai
1 Star 0 Fork 0

ABDM/Golang实现分布式缓存

加入 Gitee
与超过 1200万 开发者一起发现、参与优秀开源项目,私有仓库也完全免费 :)
免费加入
文件
该仓库未声明开源许可证文件(LICENSE),使用请关注具体项目描述及其代码上游依赖。
克隆/下载
ByteView.go 634 Bytes
一键复制 编辑 原始数据 按行查看 历史
ABDM357 提交于 2021-01-28 22:59 +08:00 . modify001addgolang
package Gache
//支持并发读写
//ByteView 表示缓存值 只读
//选择byte类型是为了能够支持任意数据类型的存储,
//例如字符串,图片
//b是只读的,使用ByteSlice方法返回一个拷贝
//防止缓存值被外部程序修改
type ByteView struct{
b []byte
}
//实现了 Value 接口
func (v ByteView) Len() int {
return len(v.b)
}
//返回切片的副本
func (v ByteView) ByteSlice() []byte {
return cloneBytes(v.b)
}
//toString
func (v ByteView) toString() string {
return string(v.b)
}
func cloneBytes(bytes []byte) []byte {
c:= make([]byte,len(bytes))
copy(c,bytes)
return c
}
Loading...
马建仓 AI 助手
尝试更多
代码解读
代码找茬
代码优化
1
https://gitee.com/abdm/Golang_practice.git
git@gitee.com:abdm/Golang_practice.git
abdm
Golang_practice
Golang实现分布式缓存
master

搜索帮助