From 5409b0f5d4254328c90efa8291c400a3768c141c Mon Sep 17 00:00:00 2001 From: Logan McNaughton <848146+loganmc10@users.noreply.github.com> Date: Sun, 29 Dec 2024 12:06:59 +0100 Subject: [PATCH] use spin sleep for more accurate VI timing (#97) --- Cargo.toml | 1 + src/device/vi.rs | 2 +- 2 files changed, 2 insertions(+), 1 deletion(-) diff --git a/Cargo.toml b/Cargo.toml index ac1f4de2..dd3a5f9c 100644 --- a/Cargo.toml +++ b/Cargo.toml @@ -19,6 +19,7 @@ sha2 = "0.10" rusttype = "0.9" futures = "0.3" sdl2-sys = "0.37" +spin_sleep = "1.3" clap = { version = "4.4", features = ["derive"] } [dependencies.sdl2] diff --git a/src/device/vi.rs b/src/device/vi.rs index 7bef6d7c..44d8c99c 100644 --- a/src/device/vi.rs +++ b/src/device/vi.rs @@ -163,7 +163,7 @@ pub fn speed_limiter(device: &device::Device) { if result.is_err() { let outcome = result.unwrap_err(); let dur = outcome.wait_time_from(governor::clock::DefaultClock::default().now()); - std::thread::sleep(dur); + spin_sleep::sleep(dur); device.vi.limiter.as_ref().unwrap().check().unwrap(); }