summaryrefslogtreecommitdiff
path: root/tests/retry_rw.rs
diff options
context:
space:
mode:
Diffstat (limited to 'tests/retry_rw.rs')
-rw-r--r--tests/retry_rw.rs10
1 files changed, 10 insertions, 0 deletions
diff --git a/tests/retry_rw.rs b/tests/retry_rw.rs
index 976ab14..0a946b0 100644
--- a/tests/retry_rw.rs
+++ b/tests/retry_rw.rs
@@ -24,11 +24,21 @@ fn thread_2() {
assert_eq!(*guard[2], 3);
}
+fn thread_3() {
+ let key = ThreadKey::get().unwrap();
+ std::thread::sleep(Duration::from_millis(50));
+ let guard = RWLOCK_1.write(key);
+ std::thread::sleep(Duration::from_millis(50));
+ assert_eq!(*guard, 1);
+}
+
#[test]
fn retries() {
let t1 = std::thread::spawn(thread_1);
let t2 = std::thread::spawn(thread_2);
+ let t3 = std::thread::spawn(thread_3);
t1.join().unwrap();
t2.join().unwrap();
+ t3.join().unwrap();
}