ToB企服应用市场:ToB评测及商务社交产业平台

标题: 支持首次触发的 Go Ticker [打印本页]

作者: 自由的羽毛    时间: 2022-8-22 04:12
标题: 支持首次触发的 Go Ticker
促使我写这篇文章主要是在写一个关于虚拟货币账户监控的项目时使用 Ticker 的问题。
Ticker 的问题

如果用过 Ticker 的朋友会知道,创建 Ticker 后并不会马上执行,而是会等待一个时间 d,这就是创建时的间隔时间。如果间隔时间很短这基本上不会有太大问题,但是如果对首次执行时间有要求,就会很麻烦。例如以下这个案例:
[code]package mainimport (        "fmt"        "sync"        "time")func main() {        ts := time.NewTicker(5 * time.Second)        fmt.Println("start_time#", time.Now().Unix())        chanClose := make(chan struct{})        var wg sync.WaitGroup        wg.Add(1)        go func() {                defer wg.Done()                for {                        select {                        case




欢迎光临 ToB企服应用市场:ToB评测及商务社交产业平台 (https://dis.qidao123.com/) Powered by Discuz! X3.4