From 5bc94101e8e608b2102a7b59fb34feca14e97eed Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Sybren=20A=2E=20St=C3=BCvel?= Date: Thu, 16 Jun 2022 12:08:13 +0200 Subject: [PATCH] Worker: Avoid sleep at shutdown Make the sleep between fetching tasks interruptable, so that a shutdown doesn't have to wait a few seconds. --- internal/worker/state_awake.go | 6 +++++- 1 file changed, 5 insertions(+), 1 deletion(-) diff --git a/internal/worker/state_awake.go b/internal/worker/state_awake.go index d2a34db9..4ad6ae07 100644 --- a/internal/worker/state_awake.go +++ b/internal/worker/state_awake.go @@ -90,7 +90,11 @@ func (w *Worker) runStateAwake(ctx context.Context) { } // Do some rate limiting. This is mostly useful while developing. - time.Sleep(durationTaskComplete) + select { + case <-ctx.Done(): + return + case <-time.After(durationTaskComplete): + } } }