跳到主要内容

interval_at

搜索

函数 interval_at 

源代码
pub fn interval_at(start: Instant, period: Duration) -> Interval
展开描述

创建一个新的 Interval,以 period 间隔产生值,第一个 tick 在 start 完成。默认的 MissedTickBehaviorBurst,但可以通过调用 set_missed_tick_behavior 进行配置。

interval 将无限期地 tick。在任何时候都可以 drop 该 Interval 值。这将取消该 interval。

§恐慌

如果 period 为零,此函数会发生 panic。

§示例

use tokio::time::{interval_at, Duration, Instant};

let start = Instant::now() + Duration::from_millis(50);
let mut interval = interval_at(start, Duration::from_millis(10));

interval.tick().await; // ticks after 50ms
interval.tick().await; // ticks after 10ms
interval.tick().await; // ticks after 10ms

// approximately 70ms have elapsed.