10个版本 (4个重大变更)
0.5.2 | 2023年1月22日 |
---|---|
0.5.1 | 2023年1月22日 |
0.4.0 | 2023年1月21日 |
0.3.3 | 2023年1月20日 |
0.1.0 | 2023年1月15日 |
#509 in 并发
34KB
607 行
Rust的本地计时器
提供使用操作系统功能的计时功能。目前支持Windows、Linux和MacOS。
目前仅支持Windows和Linux平台。
功能
tracker
(默认)- 启用静态回调跟踪器。它应该将本地回调最小化到最近被销毁的无效计时器上下文中。
示例
触发一次性任务
# use std::sync::{Arc, atomic::{AtomicBool, Ordering}};
# use std::thread;
# use std::time::Duration;
use native_timer::fire_oneshot;
let flag = Arc::new(AtomicBool::new(false));
let shared_flag = flag.clone();
fire_oneshot(Duration::from_millis(100), None, move || {
let _ = &shared_flag.store(true, Ordering::SeqCst);
}).unwrap();
thread::sleep(Duration::from_millis(200));
assert!(flag.load(Ordering::SeqCst));
有关更多用法,请参阅/src/examples/simple.rs
。
致谢
Linux和MacOS实现是从标签 v1.10.0
上的 Autd3开源库 中恢复的,这是在后续提交中删除之前。
依赖项
~0.4–36MB
~535K SLoC