We read every piece of feedback, and take your input very seriously.
To see all available qualifiers, see our documentation.
There was an error while loading. Please reload this page.
1 parent 773a4ae commit 5d85ad4Copy full SHA for 5d85ad4
examples/tree01.rs
@@ -1,14 +1,11 @@
1
+use std::sync::atomic::{AtomicU32, Ordering};
2
use cdc::*;
3
4
type IntHash = u32;
5
-static mut HASH_ID: IntHash = 0;
6
+static HASH_ID: AtomicU32 = AtomicU32::new(0);
7
fn get_new_hash_id() -> IntHash {
- unsafe {
8
- let id = HASH_ID;
9
- HASH_ID += 1;
10
- id
11
- }
+ HASH_ID.fetch_add(1, Ordering::Relaxed)
12
}
13
14
fn my_new_node(level: usize, children: &Vec<IntHash>) -> Node<IntHash> {
@@ -27,9 +24,7 @@ fn main() {
27
24
level: *level,
28
25
});
29
26
30
31
- HASH_ID = levels.len() as IntHash;
32
+ HASH_ID.store(levels.len() as _, Ordering::Relaxed);
33
34
for node in NodeIter::new(hashed_chunk_it, my_new_node, 0) {
35
println!("{:?}", node);
0 commit comments