4个版本
0.0.4 | 2022年6月7日 |
---|---|
0.0.3 | 2022年6月7日 |
0.0.2 | 2022年6月7日 |
0.0.1 | 2022年6月7日 |
#9 in #timed
每月 44次下载
11KB
124 行
定时集合
Rust中一个简单的定时集合,用于存储给定时间段的元素。
用法
[dependencies]
timed_set = "0.0.4"
示例
use timed_set::TimedSet;
use std::{time::Duration, thread::sleep};
fn main() {
let mut ts = TimedSet::new(Duration::from_secs(3));
ts.add("element_1");
assert!(ts.contains(&"element_1"));
sleep(Duration::from_secs(3));
assert!(!ts.contains(&"element_1"));
}
特定元素的自定义 ttl
use timed_set::TimedSet;
use std::{time::Duration, thread::sleep};
fn main() {
let mut ts = TimedSet::new(Duration::from_secs(3));
ts.add("element_1");
ts.add("element_2", Duration::from_secs(10)); // element with custom ttl
assert!(ts.contains(&"element_1"));
assert!(ts.contains(&"element_2"));
sleep(Duration::from_secs(3));
assert!(!ts.contains(&"element_1")); // expired
assert!(ts.contains(&"element_2"));
sleep(Duration::from_secs(8));
assert!(!ts.contains(&"element_2")); // expired
}
许可:MIT