diff --git a/actix-server/CHANGES.md b/actix-server/CHANGES.md index 14e5f4d7..daec4413 100644 --- a/actix-server/CHANGES.md +++ b/actix-server/CHANGES.md @@ -1,6 +1,9 @@ # Changes ## Unreleased - 2021-xx-xx +- Wait for accept thread to stop before sending completion signal. [#443] + +[#443]: https://github.com/actix/actix-net/pull/443 ## 2.0.0 - 2022-01-19 diff --git a/actix-server/src/server.rs b/actix-server/src/server.rs index 1dd0c597..8defa543 100644 --- a/actix-server/src/server.rs +++ b/actix-server/src/server.rs @@ -246,7 +246,8 @@ impl ServerInner { } => { self.stopping = true; - // signal accept thread to stop. This signal is non-blocking with no guarantee for immediate stop. + // Signal accept thread to stop. + // Signal is non-blocking; we wait for thread to stop later. self.waker_queue.wake(WakerInterest::Stop); // send stop signal to workers @@ -261,7 +262,7 @@ impl ServerInner { let _ = join_all(workers_stop).await; } - // wait for accept thread stop. + // wait for accept thread stop self.accept_handle .take() .unwrap()