VideoCommon/AsyncRequests: Remove now unnecessary SetEnable function. Requests are now always enabled. Call SetPassthrough on initialization to not be racy.

This commit is contained in:
Jordan Woyak 2025-10-25 16:47:09 -05:00
parent 6416b0a6ec
commit 700abd68e3
4 changed files with 2 additions and 25 deletions

View File

@ -457,6 +457,8 @@ static void FifoPlayerThread(Core::System& system, const std::optional<std::stri
const auto init_video = [&] {
DeclareAsGPUThread();
AsyncRequests::GetInstance()->SetPassthrough(!system.IsDualCoreMode());
// Must happen on the proper thread for some video backends, e.g. OpenGL.
return g_video_backend->Initialize(wsi);
};

View File

@ -42,9 +42,6 @@ void AsyncRequests::QueueEvent(Event&& event)
{
m_empty.Clear();
if (!m_enable)
return;
m_queue.push(std::move(event));
auto& system = Core::System::GetInstance();
@ -57,20 +54,6 @@ void AsyncRequests::WaitForEmptyQueue()
m_cond.wait(lock, [this] { return m_queue.empty(); });
}
void AsyncRequests::SetEnable(bool enable)
{
std::unique_lock<std::mutex> lock(m_mutex);
m_enable = enable;
if (!enable)
{
// flush the queue on disabling
while (!m_queue.empty())
m_queue.pop();
m_cond.notify_one();
}
}
void AsyncRequests::SetPassthrough(bool enable)
{
std::unique_lock<std::mutex> lock(m_mutex);

View File

@ -26,7 +26,6 @@ public:
PullEventsInternal();
}
void WaitForEmptyQueue();
void SetEnable(bool enable);
void SetPassthrough(bool enable);
template <typename F>
@ -74,6 +73,5 @@ private:
std::mutex m_mutex;
std::condition_variable m_cond;
bool m_enable = false;
bool m_passthrough = true;
};

View File

@ -287,9 +287,6 @@ void FifoManager::ResetVideoBuffer()
// Purpose: Keep the Core HW updated about the CPU-GPU distance
void FifoManager::RunGpuLoop()
{
AsyncRequests::GetInstance()->SetEnable(true);
AsyncRequests::GetInstance()->SetPassthrough(false);
m_gpu_mainloop.Run(
[this] {
// Run events from the CPU thread.
@ -391,9 +388,6 @@ void FifoManager::RunGpuLoop()
}
},
100);
AsyncRequests::GetInstance()->SetEnable(false);
AsyncRequests::GetInstance()->SetPassthrough(true);
}
void FifoManager::FlushGpu()