| | |
| | | package cron |
| | | |
| | | import ( |
| | | "time" |
| | | |
| | | "github.com/go-co-op/gocron" |
| | | |
| | | "model-engine/models" |
| | | "model-engine/pkg/logger" |
| | | "model-engine/pkg/safe" |
| | | "model-engine/service" |
| | | "time" |
| | | ) |
| | | |
| | | var s *gocron.Scheduler |
| | |
| | | if err != nil { |
| | | panic(err) |
| | | } |
| | | |
| | | for _, task := range tasks { |
| | | model, err := models.GetModel(task.ModelID) |
| | | if err != nil { |
| | | logger.Errorf("can not find model for id:%v", task.ModelID) |
| | | continue |
| | | } |
| | | task := task |
| | | |
| | | t := task |
| | | safe.Go(func() { |
| | | if err := model.Init(task); err != nil { |
| | | if err := model.Init(t); err != nil { |
| | | return |
| | | } |
| | | if err := model.Run(); err != nil { |