@@ -46,6 +46,16 @@ impl ThreadPool { | |||
} | |||
impl Drop for ThreadPool { | |||
fn drop(&mut self) { | |||
for worker in &mut self.workers { | |||
println!("Shutting down worker {}", worker.id); | |||
worker.thread.join().unwrap(); | |||
} | |||
} | |||
} | |||
struct Worker { | |||
id: usize, | |||
thread: thread::JoinHandle<()>, |