- let job = receiver.lock().unwrap().recv().unwrap();
- println!("Worker {} got a job, executing", id);
- job();
+ let message = receiver.lock().unwrap().recv().unwrap();
+
+ match message {
+ Message::NewJob(job) => {
+ println!("Worker {} got a job, executing", id);
+ job();
+ },
+
+ Message::Terminate => {
+ println!("Worker {} got terminated", id);
+ break;
+ }
+ }