chore(windows): poll core again to drop window socket
This commit is contained in:
		| @@ -11,7 +11,7 @@ use futures::future::{self, FutureResult, Either}; | ||||
| use futures::sync::oneshot; | ||||
|  | ||||
| use tokio_core::net::TcpListener; | ||||
| use tokio_core::reactor::Core; | ||||
| use tokio_core::reactor::{Core, Timeout}; | ||||
| use tokio_io::{AsyncRead, AsyncWrite}; | ||||
|  | ||||
| use std::net::{TcpStream, SocketAddr}; | ||||
| @@ -658,6 +658,12 @@ fn disable_keep_alive_post_request() { | ||||
|  | ||||
|     assert!(!dropped.load()); | ||||
|     core.run(fut).unwrap(); | ||||
|     // we must poll the Core one more time in order for Windows to drop | ||||
|     // the read-blocked socket. | ||||
|     // | ||||
|     // See https://github.com/carllerche/mio/issues/776 | ||||
|     let timeout = Timeout::new(Duration::from_millis(10), &core.handle()).unwrap(); | ||||
|     core.run(timeout).unwrap(); | ||||
|     assert!(dropped.load()); | ||||
|     child.join().unwrap(); | ||||
| } | ||||
|   | ||||
		Reference in New Issue
	
	Block a user