登录
首页 >  Golang >  Go问答

Golang 定时输出println

来源:stackoverflow

时间:2024-03-15 08:18:28 241浏览 收藏

本篇文章向大家介绍《Golang 定时输出println》,主要包括,具有一定的参考价值,需要的朋友可以参考一下。

问题内容

如何每 5 分钟使用一次 fmt.println

h := fmt.Sprintf("%x", word)
fmt.Println(h)

我需要这样的东西: 如果时间 := 5 分钟则 fmt.println(h)

只是每 5 分钟显示一次(n),而不是每行

编辑:显然我没有问正确的问题。 有一个循环,每秒生成随机数字。 对于 i := n1; i.cmp(n2) < 0; i.add(i, 一) { 我想要的是:不显示每个生成的变量(i),但是 每 5 分钟只有 1 次。


解决方案


如果5分钟后做某事,只需使用time.afterfunc

time.afterfunc(time.minute * 5, func() {
    // do something after 5min
    h := fmt.sprintf("%x", word)
    fmt.println(h)
})

否则,如果每 5 分钟执行一次操作,请使用 for 循环(如果需要,则执行例程):

for{
    time.sleep(time.minute * 5)
    // do something every 5min
    h := fmt.sprintf("%x", word)
    fmt.println(h)
}

另外,使用time.newticker可以获得时间计数器:

ticker:=time.NewTicker(time.Minute * 5)
for{
    select{
    case <-ticker.C:
        // Do something every 5min
        h := fmt.Sprintf("%x", word)
        fmt.Println(h)
    }
}

以上就是《Golang 定时输出println》的详细内容,更多关于的资料请关注golang学习网公众号!

声明:本文转载于:stackoverflow 如有侵犯,请联系study_golang@163.com删除
相关阅读
更多>
最新阅读
更多>
课程推荐
更多>