Fifo: Call AllowSleep instead of Wakeup when pausing.

BlockingLoop was being woken when the emulator was being paused
which would cause the loop to busy spin. Issue 9692.
This commit is contained in:
EmptyChaos 2016-07-15 00:20:04 +00:00
parent 63f9677fea
commit 5adb29b6cb
1 changed files with 4 additions and 1 deletions

View File

@ -154,7 +154,10 @@ void ExitGpuLoop()
void EmulatorState(bool running)
{
s_emu_running_state.store(running);
s_gpu_mainloop.Wakeup();
if (running)
s_gpu_mainloop.Wakeup();
else
s_gpu_mainloop.AllowSleep();
}
void SyncGPU(SyncGPUReason reason, bool may_move_read_ptr)