In this function, I expect d to be very close to 100ms
use std::time::Instant;
#[tokio::main]
async fn main() {
let t = Instant::now();
let delay1 = tokio::time::delay_for(std::time::Duration::from_millis(50));
delay1.await;
let delay2 = tokio::time::delay_for(std::time::Duration::from_millis(50));
delay2.await;
println!("d = {:?}", Instant::now() - t);
}
But on my PC, the results are always between 110 ~ 120ms:
cargo run --release
Finished release [optimized] target(s) in 0.03s
Running `target\release\tokio-timer-delay.exe`
d = 120.1023ms