summaryrefslogtreecommitdiff
path: root/src/core/cpu_manager.cpp
diff options
context:
space:
mode:
Diffstat (limited to 'src/core/cpu_manager.cpp')
-rw-r--r--src/core/cpu_manager.cpp11
1 files changed, 8 insertions, 3 deletions
diff --git a/src/core/cpu_manager.cpp b/src/core/cpu_manager.cpp
index 9e2e6d49f..e92b0fb37 100644
--- a/src/core/cpu_manager.cpp
+++ b/src/core/cpu_manager.cpp
@@ -39,9 +39,14 @@ void CpuManager::Initialize() {
39void CpuManager::Shutdown() { 39void CpuManager::Shutdown() {
40 running_mode = false; 40 running_mode = false;
41 Pause(false); 41 Pause(false);
42 for (std::size_t core = 0; core < Core::Hardware::NUM_CPU_CORES; core++) { 42 if (is_multicore) {
43 core_data[core].host_thread->join(); 43 for (std::size_t core = 0; core < Core::Hardware::NUM_CPU_CORES; core++) {
44 core_data[core].host_thread.reset(); 44 core_data[core].host_thread->join();
45 core_data[core].host_thread.reset();
46 }
47 } else {
48 core_data[0].host_thread->join();
49 core_data[0].host_thread.reset();
45 } 50 }
46} 51}
47 52