fix(server): Use thread::spawn instead of thread::scoped.
This commit is contained in:
		| @@ -3,7 +3,7 @@ use std::io::{BufWriter, Write}; | ||||
| use std::marker::PhantomData; | ||||
| use std::net::{SocketAddr, ToSocketAddrs}; | ||||
| use std::path::Path; | ||||
| use std::thread::{self, JoinGuard}; | ||||
| use std::thread::{self, JoinHandle}; | ||||
|  | ||||
| use num_cpus; | ||||
|  | ||||
| @@ -104,7 +104,7 @@ S: NetworkStream + Clone + Send> Server<'a, H, L> { | ||||
|         let pool = ListenerPool::new(listener.clone()); | ||||
|         let work = move |mut stream| handle_connection(&mut stream, &handler); | ||||
|  | ||||
|         let guard = thread::scoped(move || pool.accept(work, threads)); | ||||
|         let guard = thread::spawn(move || pool.accept(work, threads)); | ||||
|  | ||||
|         Ok(Listening { | ||||
|             _guard: guard, | ||||
| @@ -175,7 +175,10 @@ where S: NetworkStream + Clone, H: Handler { | ||||
|  | ||||
| /// A listening server, which can later be closed. | ||||
| pub struct Listening { | ||||
|     _guard: JoinGuard<'static, ()>, | ||||
|     #[cfg(feature = "nightly")] | ||||
|     _guard: JoinHandle<()>, | ||||
|     #[cfg(not(feature = "nightly"))] | ||||
|     _guard: JoinHandle, | ||||
|     /// The socket addresses that the server is bound to. | ||||
|     pub socket: SocketAddr, | ||||
| } | ||||
|   | ||||
		Reference in New Issue
	
	Block a user