Go语言Cron库实现每20分钟定时执行任务
使用Go语言Cron库实现每20分钟定时执行任务
在Go语言中,可以使用github.com/robfig/cron库来实现定时任务。
以下代码示例演示了如何使用Cron库设置每20分钟执行一次ExecContainerCount函数:
package main
import (
'github.com/robfig/cron'
'log'
)
func main() {
c := cron.New()
_, err := c.AddFunc('*/20 * * * *', ExecContainerCount)
if err != nil {
log.Fatal(err)
}
c.Start()
select {}
}
func ExecContainerCount() {
// TODO: 执行统计容器数量的逻辑
log.Println('执行统计容器数量任务...')
}
代码说明:
cron.New()创建一个新的Cron调度器实例。c.AddFunc('*/20 * * * *', ExecContainerCount)添加一个定时任务,每20分钟执行一次ExecContainerCount函数。*/20 * * * *是cron表达式,表示每20分钟执行一次。c.Start()启动调度器。select {}阻塞主线程,防止程序退出。
cron表达式说明:
* * * * *
| | | | |
| | | | └─ 星期几 (0 - 7) (0 和 7 都表示星期天)
| | | └─ 月份 (1 - 12)
| | └─ 日 (1 - 31)
| └─ 小时 (0 - 23)
└─ 分钟 (0 - 59)
在该示例中,*/20 * * * *表示每20分钟执行一次。
通过修改cron表达式,可以设置不同的定时规则,例如每天的特定时间执行,每周的特定时间执行等。
原文地址: https://www.cveoy.top/t/topic/fAyr 著作权归作者所有。请勿转载和采集!