Skip to content
This commit does not belong to any branch on this repository, and may belong to a fork outside of the repository.

Commit 7177ac8

Browse files
committedJul 7, 2024
once_lock: make test not take as long in Miri
1 parent 5569ece commit 7177ac8

File tree

1 file changed

+13
-6
lines changed

1 file changed

+13
-6
lines changed
 

‎std/src/sync/once_lock.rs

+13-6
Original file line numberDiff line numberDiff line change
@@ -80,14 +80,21 @@ use crate::sync::Once;
8080
/// static LIST: OnceList<u32> = OnceList::new();
8181
/// static COUNTER: AtomicU32 = AtomicU32::new(0);
8282
///
83-
/// let vec = (0..thread::available_parallelism().unwrap().get()).map(|_| thread::spawn(|| {
84-
/// while let i @ 0..=1000 = COUNTER.fetch_add(1, Ordering::Relaxed) {
85-
/// LIST.push(i);
83+
/// # const LEN: u32 = if cfg!(miri) { 50 } else { 1000 };
84+
/// # /*
85+
/// const LEN: u32 = 1000;
86+
/// # */
87+
/// thread::scope(|s| {
88+
/// for _ in 0..thread::available_parallelism().unwrap().get() {
89+
/// s.spawn(|| {
90+
/// while let i @ 0..LEN = COUNTER.fetch_add(1, Ordering::Relaxed) {
91+
/// LIST.push(i);
92+
/// }
93+
/// });
8694
/// }
87-
/// })).collect::<Vec<thread::JoinHandle<_>>>();
88-
/// vec.into_iter().for_each(|handle| handle.join().unwrap());
95+
/// });
8996
///
90-
/// for i in 0..=1000 {
97+
/// for i in 0..LEN {
9198
/// assert!(LIST.contains(&i));
9299
/// }
93100
///

0 commit comments

Comments
 (0)
Failed to load comments.