9个版本
0.3.0 | 2021年3月6日 |
---|---|
0.2.0 | 2018年4月7日 |
0.1.1 | 2017年10月27日 |
0.1.0 | 2017年4月17日 |
0.0.5 | 2017年3月11日 |
#83 in 异步
590,620 每月下载量
用于 247 个crate (56 直接)
20KB
413 行
tokio-retry
为tokio库生态系统提供可扩展的异步重试行为。
安装
将以下内容添加到您的 Cargo.toml
[dependencies]
tokio-retry = "0.3"
示例
use tokio_retry::Retry;
use tokio_retry::strategy::{ExponentialBackoff, jitter};
async fn action() -> Result<u64, ()> {
// do some real-world stuff here...
Err(())
}
#[tokio::main]
async fn main() -> Result<(), ()> {
let retry_strategy = ExponentialBackoff::from_millis(10)
.map(jitter) // add jitter to delays
.take(3); // limit to 3 retries
let result = Retry::spawn(retry_strategy, action).await?;
Ok(())
}
依赖关系
~2.6–4MB
~69K SLoC