diff --git a/src/core.c/ThreadPoolScheduler.pm6 b/src/core.c/ThreadPoolScheduler.pm6 index e2d053b2b52..1ae87e2795d 100644 --- a/src/core.c/ThreadPoolScheduler.pm6 +++ b/src/core.c/ThreadPoolScheduler.pm6 @@ -433,7 +433,10 @@ my class ThreadPoolScheduler does Scheduler { (my $cand := nqp::atpos($cur-affinity-workers,$i)), nqp::unless( nqp::elems(my $queue := $cand.queue), - (return $queue) + nqp::unless( + $cand.working, + (return $queue), + ), ), nqp::if( nqp::islt_i(