#tokio #intervals #timing #async-task #timestamp #waiting #min

async_timing_util

tokio async functions for waiting until even intervals (on 1 min, 5 min, 30 min, etc), or waiting until a specified timestamp

16 releases (1 stable)

1.0.0 Jul 3, 2024
0.1.14 Jan 18, 2023
0.1.12 Dec 11, 2022
0.1.11 Nov 1, 2022
0.1.2 Sep 19, 2022

#1178 in Asynchronous

Download history 98/week @ 2024-08-09 87/week @ 2024-08-16 24/week @ 2024-08-23 43/week @ 2024-08-30 58/week @ 2024-09-06 48/week @ 2024-09-13 51/week @ 2024-09-20 95/week @ 2024-09-27 114/week @ 2024-10-04 109/week @ 2024-10-11 96/week @ 2024-10-18 68/week @ 2024-10-25 71/week @ 2024-11-01 32/week @ 2024-11-08 35/week @ 2024-11-15 66/week @ 2024-11-22

209 downloads per month
Used in 8 crates (6 directly)

MIT license

8KB
163 lines

Async Timing Util

Convenient utilities for doing repeated tasks at precise intervals.

use async_timing_util::{Timelength, wait_until_timelength};

loop {
    let ts = wait_until_timelength(Timelength::OneHour, 0).await;
    /// Do something async every hour, on the hour.
		/// Runs at 00:00, 01:00, 02:00, etc.
}

lib.rs:

Async Timing Util

Convenient utilities for doing repeated tasks at precise intervals.

use async_timing_util::{Timelength, wait_until_timelength};

loop {
    let ts = wait_until_timelength(Timelength::OneHour).await;
    /// Do something async every hour, on the hour
    /// Runs at 00:00, 01:00, 02:00, etc.
}

Dependencies

~2.4–8.5MB
~69K SLoC