2个不稳定版本
0.2.0 | 2024年7月18日 |
---|---|
0.1.0 | 2024年4月18日 |
#464 在 异步
每月 121 次下载
7KB
83 行
可暂停未来
描述
可暂停和可恢复的未来/流,适用于后台任务。
用法
将其添加到您的 Cargo.toml
[dependencies]
pausable_future = "~0.2"
示例
use std::time::Duration;
use pausable_future::Pausable;
use tokio::time::sleep;
#[tokio::main]
async fn main() {
let pausable = Pausable::new(async {
let mut count = 0;
loop {
sleep(Duration::from_millis(300)).await;
count += 1;
println!("count: {}", count);
}
});
let controller = pausable.controller();
tokio::spawn(pausable);
println!("spawn");
sleep(Duration::from_secs(1)).await;
controller.pause();
println!("paused");
sleep(Duration::from_secs(1)).await;
controller.resume();
println!("resumed");
sleep(Duration::from_secs(1)).await;
}
依赖项
~170KB