mirror of
https://github.com/fafhrd91/actix-net
synced 2024-11-27 20:12:58 +01:00
retry on EINTR in accept loop (#264)
Co-authored-by: lishuo <lishuo.03@bytedance.com>
This commit is contained in:
parent
4a8693d000
commit
db3385e865
@ -2,8 +2,10 @@
|
|||||||
|
|
||||||
## Unreleased - 2021-xx-xx
|
## Unreleased - 2021-xx-xx
|
||||||
* Hidden `ServerBuilder::start` method has been removed. Use `ServerBuilder::run`. [#246]
|
* Hidden `ServerBuilder::start` method has been removed. Use `ServerBuilder::run`. [#246]
|
||||||
|
* Add retry for EINTR(`io::Interrupted`) in `Accept`'s poll loop. [#264]
|
||||||
|
|
||||||
[#246]: https://github.com/actix/actix-net/pull/246
|
[#246]: https://github.com/actix/actix-net/pull/246
|
||||||
|
[#264]: https://github.com/actix/actix-net/pull/264
|
||||||
|
|
||||||
|
|
||||||
## 2.0.0-beta.2 - 2021-01-03
|
## 2.0.0-beta.2 - 2021-01-03
|
||||||
|
@ -161,9 +161,16 @@ impl Accept {
|
|||||||
let mut events = mio::Events::with_capacity(128);
|
let mut events = mio::Events::with_capacity(128);
|
||||||
|
|
||||||
loop {
|
loop {
|
||||||
self.poll
|
if let Err(e) = self.poll.poll(&mut events, None) {
|
||||||
.poll(&mut events, None)
|
match e.kind() {
|
||||||
.unwrap_or_else(|e| panic!("Poll error: {}", e));
|
std::io::ErrorKind::Interrupted => {
|
||||||
|
continue;
|
||||||
|
}
|
||||||
|
_ => {
|
||||||
|
panic!("Poll error: {}", e);
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
for event in events.iter() {
|
for event in events.iter() {
|
||||||
let token = event.token();
|
let token = event.token();
|
||||||
|
Loading…
Reference in New Issue
Block a user