diff --git a/actix-server/src/server.rs b/actix-server/src/server.rs index 85ff074a..cae83ce4 100644 --- a/actix-server/src/server.rs +++ b/actix-server/src/server.rs @@ -245,13 +245,15 @@ impl ServerInner { // stop accept thread self.waker_queue.wake(WakerInterest::Stop); + // send stop signal to workers + let workers_stop = self + .worker_handles + .iter() + .map(|worker| worker.stop(graceful)) + .collect::>(); + if graceful { // wait for all workers to shut down - let workers_stop = self - .worker_handles - .iter() - .map(|worker| worker.stop(graceful)) - .collect::>(); let _ = join_all(workers_stop).await; }