From 215626037dd8b4f766b9c3798ef2ae873a891d7e Mon Sep 17 00:00:00 2001 From: "fengyun.rui" Date: Tue, 9 May 2023 01:00:20 +0800 Subject: [PATCH] fix: executor run block when executor.stop() (#475) --- executor.go | 10 ++++++++-- 1 file changed, 8 insertions(+), 2 deletions(-) diff --git a/executor.go b/executor.go index 708e7cbc..cfc2be47 100644 --- a/executor.go +++ b/executor.go @@ -194,10 +194,16 @@ func (e *executor) run() { switch e.limitMode { case RescheduleMode: if e.limitModeRunningJobs.Load() < int64(e.limitModeMaxRunningJobs) { - e.limitModeQueue <- f + select { + case e.limitModeQueue <- f: + case <-e.ctx.Done(): + } } case WaitMode: - e.limitModeQueue <- f + select { + case e.limitModeQueue <- f: + case <-e.ctx.Done(): + } } return }