Files
cronlib/example/easy/easy.go
2022-02-18 15:49:11 +08:00

74 lines
982 B
Go

package main
import (
"log"
"time"
"github.com/rfyiamcool/cronlib"
)
var (
cron = cronlib.New()
)
func main() {
handleClean()
time.AfterFunc(time.Duration(2*time.Second), func() {
// dynamic add
handleBackup()
})
time.AfterFunc(
12*time.Second,
func() {
log.Println("stop clean")
cron.StopService("clean")
log.Println("stop backup")
cron.StopService("backup")
},
)
cron.Start()
cron.Wait()
}
func handleClean() {
job, err := cronlib.NewJobModel(
"*/5 * * * * *",
func() {
pstdout("do clean gc action")
},
)
if err != nil {
panic(err.Error())
}
err = cron.Register("clean", job)
if err != nil {
panic(err.Error())
}
}
func handleBackup() {
job, err := cronlib.NewJobModel(
"*/5 * * * * *",
func() {
pstdout("do backup action")
},
)
if err != nil {
panic(err.Error())
}
err = cron.DynamicRegister("backup", job)
if err != nil {
panic(err.Error())
}
}
func pstdout(srv string) {
log.Println(srv)
}