]> git.proxmox.com Git - rustc.git/blob - library/std/src/sys/sgx/waitqueue/spin_mutex/tests.rs
New upstream version 1.48.0~beta.8+dfsg1
[rustc.git] / library / std / src / sys / sgx / waitqueue / spin_mutex / tests.rs
1 #![allow(deprecated)]
2
3 use super::*;
4 use crate::sync::Arc;
5 use crate::thread;
6 use crate::time::Duration;
7
8 #[test]
9 fn sleep() {
10 let mutex = Arc::new(SpinMutex::<i32>::default());
11 let mutex2 = mutex.clone();
12 let guard = mutex.lock();
13 let t1 = thread::spawn(move || {
14 *mutex2.lock() = 1;
15 });
16
17 thread::sleep(Duration::from_millis(50));
18
19 assert_eq!(*guard, 0);
20 drop(guard);
21 t1.join().unwrap();
22 assert_eq!(*mutex.lock(), 1);
23 }