Merge branch 'master' into refactor/simplify_server_future

This commit is contained in:
fakeshadow 2021-04-30 21:02:02 +08:00 committed by GitHub
commit 4ff4071f75
No known key found for this signature in database
GPG Key ID: 4AEE18F83AFDEB23
1 changed files with 15 additions and 9 deletions

View File

@ -196,7 +196,7 @@ impl Accept {
loop {
if let Err(e) = self.poll.poll(&mut events, None) {
match e.kind() {
io::ErrorKind::Interrupted => continue,
io::ErrorKind::Interrupted => {}
_ => panic!("Poll error: {}", e),
}
}
@ -257,23 +257,29 @@ impl Accept {
Some(WakerInterest::Pause) => {
drop(guard);
self.paused = true;
if !self.paused {
self.paused = true;
self.deregister_all(sockets);
self.deregister_all(sockets);
}
}
Some(WakerInterest::Resume) => {
drop(guard);
self.paused = false;
if self.paused {
self.paused = false;
sockets.iter_mut().for_each(|info| {
self.register_logged(info);
});
sockets.iter_mut().for_each(|info| {
self.register_logged(info);
});
self.accept_all(sockets);
self.accept_all(sockets);
}
}
Some(WakerInterest::Stop) => {
self.deregister_all(sockets);
if !self.paused {
self.deregister_all(sockets);
}
return true;
}