以下是一个简单的示例,演示如何在Golang中创建一个每天早上10点执行的定时任务:
0 10 * * *
是用来表示定时任务执行时间的一种表达式,称为 cron 表达式。它由五个字段组成,分别代表分钟、小时、日、月和星期几。
在 0 10 * * *
中,各个字段的含义是:
第一个字段(分钟):表示每小时的第 0 分钟开始执行任务。
第二个字段(小时):表示每天的第 10 小时开始执行任务。
第三个字段(日):表示任意日期都会触发任务。
第四个字段(月):表示任意月份都会触发任务。
第五个字段(星期几):表示任意星期几都会触发任务。
因此,0 10 * * *
表示定时任务将在每天早上10点执行。
package main
import (
"fmt"
"log"
"time"
"github.com/robfig/cron"
)
func main() {
c := cron.New()
// 添加定时任务
_, err := c.AddFunc("0 10 * * *", func() {
fmt.Println("定时任务开始执行...")
// 需要执行的任务代码写在这里
fmt.Println("定时任务执行完毕!")
})
if err != nil {
log.Fatal(err)
}
// 启动定时器
c.Start()
// 等待程序退出
select {}
}
这个示例通过引入 github.com/robfig/cron 包,并使用 AddFunc() 方法添加每天早上10点执行的定时任务。你可以将需要执行的任务代码放在函数内部的注释处。
完成后,你可以编译并运行该程序,它将会在每天早上10点触发你的任务。