mirror of
https://github.com/woodchen-ink/Q58Bot.git
synced 2025-07-18 05:42:06 +08:00
Refactor scheduled tasks to run concurrently and improve cleanup logic
This commit is contained in:
parent
dd6aaad112
commit
e3cfd8e4bc
6
main.go
6
main.go
@ -19,11 +19,11 @@ func main() {
|
|||||||
|
|
||||||
go binance.RunBinance()
|
go binance.RunBinance()
|
||||||
|
|
||||||
|
// 启动定期任务
|
||||||
|
go service.StartScheduledTasks()
|
||||||
|
|
||||||
err = service.RunMessageHandler()
|
err = service.RunMessageHandler()
|
||||||
if err != nil {
|
if err != nil {
|
||||||
log.Fatalf("Error in RunMessageHandler: %v", err)
|
log.Fatalf("Error in RunMessageHandler: %v", err)
|
||||||
}
|
}
|
||||||
|
|
||||||
// 启动定期任务
|
|
||||||
service.StartScheduledTasks()
|
|
||||||
}
|
}
|
||||||
|
@ -18,15 +18,20 @@ func periodicCleanup() {
|
|||||||
ticker := time.NewTicker(24 * time.Hour) // 每天执行一次清理
|
ticker := time.NewTicker(24 * time.Hour) // 每天执行一次清理
|
||||||
defer ticker.Stop()
|
defer ticker.Stop()
|
||||||
|
|
||||||
for {
|
// 立即执行一次清理
|
||||||
select {
|
cleanupExpiredLinks()
|
||||||
case <-ticker.C:
|
|
||||||
err := core.DB.CleanupExpiredLinks()
|
// 使用 for range 替代 for { select {} }
|
||||||
if err != nil {
|
for range ticker.C {
|
||||||
log.Printf("清理过期链接时发生错误: %v", err)
|
cleanupExpiredLinks()
|
||||||
} else {
|
}
|
||||||
log.Println("已成功清理过期链接")
|
}
|
||||||
}
|
|
||||||
}
|
func cleanupExpiredLinks() {
|
||||||
|
err := core.DB.CleanupExpiredLinks()
|
||||||
|
if err != nil {
|
||||||
|
log.Printf("清理过期链接时发生错误: %v", err)
|
||||||
|
} else {
|
||||||
|
log.Println("已成功清理过期链接")
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
Loading…
x
Reference in New Issue
Block a user