Advertisement
Guest User

Untitled

a guest
May 26th, 2019
63
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
text 0.48 KB | None | 0 0
  1. extern mod extra;
  2. use extra::arc::RWArc;
  3.  
  4. fn main() {
  5. let numbers = [1,2,3];
  6.  
  7. let numbers_arc = RWArc::new(numbers);
  8.  
  9. for num in range(0, 3) {
  10. let (port, chan) = Chan::new();
  11. chan.send(numbers_arc.clone());
  12.  
  13. do spawn {
  14. let local_arc = port.recv();
  15.  
  16. local_arc.write(|nums| {
  17. nums[num] += 1
  18. });
  19.  
  20. local_arc.read(|nums| {
  21. println!("{:d}", nums[num]);
  22. })
  23. }
  24. }
  25. }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement