Guest User

Untitled

a guest
Sep 20th, 2018
66
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
text 0.42 KB | None | 0 0
  1. use std::sync::{Arc, Mutex};
  2. use std::thread;
  3.  
  4. fn main() {
  5. let data = Arc::new(Mutex::new(vec![1, 2, 3]));
  6. let mut handlers = vec![];
  7.  
  8. for i in 0..3 {
  9. let data = data.clone();
  10. handlers.push(thread::spawn(move || {
  11. let mut data = data.lock().unwrap();
  12. data[0] += i;
  13. }));
  14. }
  15. for each in handlers {
  16. each.join().unwrap();
  17. }
  18.  
  19. println!("{:?}", data);
  20. }
Add Comment
Please, Sign In to add comment