clean up old tickers

This commit is contained in:
sentriz
2023-10-04 21:36:55 +01:00
parent 315c4f834e
commit 04c7fa2efd

View File

@@ -293,19 +293,23 @@ func main() {
defer logJob("session clean")() defer logJob("session clean")()
ticker := time.NewTicker(10 * time.Minute) ticker := time.NewTicker(10 * time.Minute)
defer ticker.Stop()
for {
select { select {
case <-ctx.Done(): case <-ctx.Done():
return nil return nil
case <-ticker.C: case <-ticker.C:
sessDB.Cleanup() sessDB.Cleanup()
} }
return nil }
}) })
errgrp.Go(func() error { errgrp.Go(func() error {
defer logJob("podcast refresh")() defer logJob("podcast refresh")()
ticker := time.NewTicker(time.Hour) ticker := time.NewTicker(time.Hour)
defer ticker.Stop()
for {
select { select {
case <-ctx.Done(): case <-ctx.Done():
return nil return nil
@@ -314,7 +318,7 @@ func main() {
log.Printf("failed to refresh some feeds: %s", err) log.Printf("failed to refresh some feeds: %s", err)
} }
} }
return nil }
}) })
errgrp.Go(func() error { errgrp.Go(func() error {
@@ -325,6 +329,8 @@ func main() {
defer logJob("podcast purge")() defer logJob("podcast purge")()
ticker := time.NewTicker(24 * time.Hour) ticker := time.NewTicker(24 * time.Hour)
defer ticker.Stop()
for {
select { select {
case <-ctx.Done(): case <-ctx.Done():
return nil return nil
@@ -333,7 +339,7 @@ func main() {
log.Printf("error purging old podcasts: %v", err) log.Printf("error purging old podcasts: %v", err)
} }
} }
return nil }
}) })
errgrp.Go(func() error { errgrp.Go(func() error {
@@ -344,6 +350,8 @@ func main() {
defer logJob("scan timer")() defer logJob("scan timer")()
ticker := time.NewTicker(time.Duration(*confScanIntervalMins) * time.Minute) ticker := time.NewTicker(time.Duration(*confScanIntervalMins) * time.Minute)
defer ticker.Stop()
for {
select { select {
case <-ctx.Done(): case <-ctx.Done():
return nil return nil
@@ -352,7 +360,7 @@ func main() {
log.Printf("error scanning: %v", err) log.Printf("error scanning: %v", err)
} }
} }
return nil }
}) })
errgrp.Go(func() error { errgrp.Go(func() error {
@@ -412,14 +420,17 @@ func main() {
defer logJob("refresh artist info")() defer logJob("refresh artist info")()
ticker := time.NewTicker(8 * time.Second) ticker := time.NewTicker(8 * time.Second)
defer ticker.Stop()
for {
select { select {
case <-ctx.Done(): case <-ctx.Done():
return nil
case <-ticker.C: case <-ticker.C:
if err := artistInfoCache.Refresh(); err != nil { if err := artistInfoCache.Refresh(); err != nil {
log.Printf("error in artist info cache: %v", err) log.Printf("error in artist info cache: %v", err)
} }
} }
return nil }
}) })
errgrp.Go(func() error { errgrp.Go(func() error {