CoreTiming/CycleTimer: Correct Idling.
This commit is contained in:
parent
bece52cd81
commit
bfb5244cf8
|
@ -136,8 +136,11 @@ void CoreTiming::AddTicks(u64 ticks) {
|
||||||
|
|
||||||
void CoreTiming::Idle() {
|
void CoreTiming::Idle() {
|
||||||
if (!event_queue.empty()) {
|
if (!event_queue.empty()) {
|
||||||
u64 next_event_time = event_queue.front().time;
|
const u64 next_event_time = event_queue.front().time;
|
||||||
ticks = nsToCycles(std::chrono::nanoseconds(next_event_time)) + 10U;
|
const u64 next_ticks = nsToCycles(std::chrono::nanoseconds(next_event_time)) + 10U;
|
||||||
|
if (next_ticks > ticks) {
|
||||||
|
ticks = next_ticks;
|
||||||
|
}
|
||||||
return;
|
return;
|
||||||
}
|
}
|
||||||
ticks += 1000U;
|
ticks += 1000U;
|
||||||
|
|
Reference in New Issue