1 Star 1 Fork 0

ysc/yu

加入 Gitee
与超过 1200万 开发者一起发现、参与优秀开源项目,私有仓库也完全免费 :)
免费加入
文件
克隆/下载
serial.go 561 Bytes
一键复制 编辑 原始数据 按行查看 历史
ysc 提交于 2021-03-04 12:03 . init
package yu
// Serial 序列生成器
type Serial struct {
serial chan int
count int
reset int
}
// NewSerial 创建Serial
func NewSerial(reset int) *Serial {
return &Serial{
serial: make(chan int),
count: 0,
reset: reset,
}
}
// Start 开始序列生成器
func (s *Serial) Start() {
go func() {
for {
s.serial <- s.count
s.count++
if s.count > s.reset {
s.count = 0
}
}
}()
}
// Get 获取序列值
func (s *Serial) Get() int {
return <-s.serial
}
// Reset 重置计数
func (s *Serial) Reset(c int) {
s.count = c
}
Loading...
马建仓 AI 助手
尝试更多
代码解读
代码找茬
代码优化
Go
1
https://gitee.com/yscsky/yu.git
git@gitee.com:yscsky/yu.git
yscsky
yu
yu
v0.2.0

搜索帮助