jobbase.go 646 B

12345678910111213141516171819202122232425262728293031
  1. package jobs
  2. import (
  3. "fmt"
  4. "time"
  5. "github.com/robfig/cron/v3"
  6. )
  7. var timeFormat = "2006-01-02 15:04:05"
  8. var retryCount = 3
  9. // AddJob 添加任务 AddJob(invokeTarget string, jobId int, jobName string, cronExpression string)
  10. func AddJob(c *cron.Cron, job Job) (int, error) {
  11. if job == nil {
  12. fmt.Println("unknown")
  13. return 0, nil
  14. }
  15. return job.addJob(c)
  16. }
  17. // Remove 移除任务
  18. func Remove(c *cron.Cron, entryID int) chan bool {
  19. ch := make(chan bool)
  20. go func() {
  21. c.Remove(cron.EntryID(entryID))
  22. fmt.Println(time.Now().Format(timeFormat), " [INFO] JobCore Remove success ,info entryID :", entryID)
  23. ch <- true
  24. }()
  25. return ch
  26. }