From af022294dd7240a3199794e43dd8997fd0dbc136 Mon Sep 17 00:00:00 2001 From: Liam Date: Fri, 27 May 2022 20:44:45 -0400 Subject: CpuManager: simplify pausing --- src/core/cpu_manager.h | 11 +++-------- 1 file changed, 3 insertions(+), 8 deletions(-) (limited to 'src/core/cpu_manager.h') diff --git a/src/core/cpu_manager.h b/src/core/cpu_manager.h index aee352245..ddd9691ca 100644 --- a/src/core/cpu_manager.h +++ b/src/core/cpu_manager.h @@ -69,13 +69,11 @@ private: void MultiCoreRunGuestLoop(); void MultiCoreRunIdleThread(); void MultiCoreRunSuspendThread(); - void MultiCorePause(bool paused); void SingleCoreRunGuestThread(); void SingleCoreRunGuestLoop(); void SingleCoreRunIdleThread(); void SingleCoreRunSuspendThread(); - void SingleCorePause(bool paused); static void ThreadStart(std::stop_token stop_token, CpuManager& cpu_manager, std::size_t core); @@ -83,16 +81,13 @@ private: struct CoreData { std::shared_ptr host_context; - std::unique_ptr enter_barrier; - std::unique_ptr exit_barrier; - std::atomic is_running; - std::atomic is_paused; - std::atomic initialized; std::jthread host_thread; }; std::atomic running_mode{}; - std::atomic paused_state{}; + std::atomic pause_state{}; + std::unique_ptr pause_barrier{}; + std::mutex pause_lock{}; std::array core_data{}; -- cgit v1.2.3