Skip to content

Commit d48fecb

Browse files
committed
Extend the mutex singleton example with object substitution
1 parent e1bf258 commit d48fecb

File tree

2 files changed

+9
-2
lines changed

2 files changed

+9
-2
lines changed

creational/singleton/how-to-create/README.md

Lines changed: 2 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -118,5 +118,6 @@ cargo run --bin singleton-mutex
118118
### Output
119119

120120
```
121-
Called 3 times
121+
Called 3 times: [1, 1, 1]
122+
New singleton object: [3, 4, 5]
122123
```

creational/singleton/how-to-create/mutex.rs

Lines changed: 7 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -21,5 +21,11 @@ fn main() {
2121
do_a_call();
2222
do_a_call();
2323

24-
println!("Called {} times", ARRAY.lock().unwrap().len());
24+
let array = ARRAY.lock().unwrap();
25+
println!("Called {} times: {:?}", array.len(), array);
26+
drop(array);
27+
28+
*ARRAY.lock().unwrap() = vec![3, 4, 5];
29+
30+
println!("New singleton object: {:?}", ARRAY.lock().unwrap());
2531
}

0 commit comments

Comments
 (0)