我想实时执行cron 任务该怎么写代码
时间: 2024-04-16 15:29:12 浏览: 57
要在 Go 中实时执行 cron 任务,你可以使用 `github.com/robfig/cron` 库。下面是一个示例代码,演示了如何实时执行 cron 任务:
```go
package main
import (
"fmt"
"log"
"time"
"github.com/robfig/cron"
)
func main() {
// 创建 cron 实例
c := cron.New()
// 添加 cron 任务
_, err := c.AddFunc("* * * * *", func() {
fmt.Println("执行 cron 任务:", time.Now())
})
if err != nil {
log.Fatal(err)
}
// 启动 cron
c.Start()
// 阻塞主线程,保持程序一直运行
select {}
}
```
在上述示例中,我们创建了一个 `cron` 实例,并添加了一个 cron 任务。`AddFunc` 函数接收一个 cron 表达式和一个函数作为参数,用于指定任务的执行时间和要执行的操作。
在这个示例中,我们使用 `* * * * *` 作为 cron 表达式,表示每分钟执行一次任务。你可以根据自己的需求修改这个表达式。
然后,我们调用 `c.Start()` 启动 cron 实例,并使用 `select {}` 阻塞主线程,以保持程序一直运行。
这样,cron 任务就会根据指定的时间表实时执行了。你可以根据自己的需求修改 cron 表达式和任务执行的逻辑来实现实时执行 cron 任务。
阅读全文