fix(task): refactor task module and fix reload stuck/error, fix some logic

This commit is contained in:
yusing
2025-05-28 22:07:13 +08:00
parent c90795e614
commit 2628d9e8a8
14 changed files with 371 additions and 443 deletions

View File

@@ -117,13 +117,13 @@ func Reload() gperr.Error {
newCfg := newConfig()
err := newCfg.load()
if err != nil {
newCfg.task.Finish(err)
newCfg.task.FinishAndWait(err)
return gperr.New(ansi.Warning("using last config")).With(err)
}
// cancel all current subtasks -> wait
// -> replace config -> start new subtasks
config.GetInstance().(*Config).Task().Finish("config changed")
config.GetInstance().(*Config).Task().FinishAndWait("config changed")
newCfg.Start(StartAllServers)
config.SetInstance(newCfg)
return nil