From cc96e2ce5875e8e5c28a9ede3c30b833b0bce225 Mon Sep 17 00:00:00 2001 From: Mica White Date: Sat, 9 Mar 2024 14:18:27 -0500 Subject: Joins in example programs --- examples/double_mutex.rs | 8 +++++++- 1 file changed, 7 insertions(+), 1 deletion(-) (limited to 'examples/double_mutex.rs') diff --git a/examples/double_mutex.rs b/examples/double_mutex.rs index 1469f45..d1a939c 100644 --- a/examples/double_mutex.rs +++ b/examples/double_mutex.rs @@ -8,14 +8,20 @@ static DATA_1: Mutex = Mutex::new(0); static DATA_2: Mutex = Mutex::new(String::new()); fn main() { + let mut threads = Vec::new(); for _ in 0..N { - thread::spawn(move || { + let th = thread::spawn(move || { let key = ThreadKey::lock().unwrap(); let data = (&DATA_1, &DATA_2); let mut guard = LockGuard::lock(&data, key); *guard.1 = (100 - *guard.0).to_string(); *guard.0 += 1; }); + threads.push(th); + } + + for th in threads { + _ = th.join(); } let key = ThreadKey::lock().unwrap(); -- cgit v1.2.3