diff --git a/src/timer.rs b/src/timer.rs index 570dec1..b0c51eb 100644 --- a/src/timer.rs +++ b/src/timer.rs @@ -440,7 +440,14 @@ impl Timer { } pub fn get_idle_time(&self) -> i64 { - let idle_time = 0; + let mut idle_time = 0; + let start_idx = (self.timer_tick as usize) & TVR_MASK; + for i in start_idx..self.tv1.len() { + if !self.tv1[i].borrow().empty() { + break; + } + idle_time += 1; + } return idle_time; }