Guest User

Untitled

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