2016-08-09 01:39:37 +02:00
|
|
|
// ignore-emscripten no threads support
|
2019-04-24 18:26:33 +02:00
|
|
|
// ignore-sgx no thread sleep support
|
2016-08-09 01:39:37 +02:00
|
|
|
|
2016-06-19 15:58:40 +02:00
|
|
|
use std::thread::{self, sleep};
|
|
|
|
use std::time::Duration;
|
|
|
|
use std::sync::{Arc, Mutex};
|
|
|
|
use std::u64;
|
|
|
|
|
|
|
|
fn main() {
|
|
|
|
let finished = Arc::new(Mutex::new(false));
|
|
|
|
let t_finished = finished.clone();
|
|
|
|
thread::spawn(move || {
|
|
|
|
sleep(Duration::new(u64::MAX, 0));
|
|
|
|
*t_finished.lock().unwrap() = true;
|
|
|
|
});
|
|
|
|
sleep(Duration::from_millis(100));
|
|
|
|
assert_eq!(*finished.lock().unwrap(), false);
|
|
|
|
}
|