From bfd0ee00a822d3dfe56eaa6cc3ffddd2a1fe0d01 Mon Sep 17 00:00:00 2001 From: michael-bailey Date: Fri, 17 Jul 2020 19:50:37 +0100 Subject: [PATCH] Update lib.rs --- src/lib.rs | 8 ++++---- 1 file changed, 4 insertions(+), 4 deletions(-) diff --git a/src/lib.rs b/src/lib.rs index 89cbe0e..b6e16e3 100644 --- a/src/lib.rs +++ b/src/lib.rs @@ -1,5 +1,5 @@ use std::thread; -use std::sync::mpsc; +use crossbeam::{unbounded , Sender, Receiver}; use std::sync::Arc; use std::sync::Mutex; @@ -10,7 +10,7 @@ enum Message { pub struct ThreadPool{ workers: Vec, - sender: mpsc::Sender, + sender: Sender, } type Job = Box; @@ -26,7 +26,7 @@ impl ThreadPool{ pub fn new(size: usize) -> ThreadPool { assert!(size > 0); - let (sender, receiver) = mpsc::channel(); + let (sender, receiver) = unbounded(); let receiver = Arc::new(Mutex::new(receiver)); @@ -56,7 +56,7 @@ struct Worker { } impl Worker { - fn new(id: usize, receiver: Arc>>) -> Worker { + fn new(id: usize, receiver: Arc>>) -> Worker { let thread = thread::spawn(move || { loop{ let message = receiver.lock().unwrap().recv().unwrap();