diff options
| author | 2019-10-12 08:21:51 -0400 | |
|---|---|---|
| committer | 2019-10-15 11:55:24 -0400 | |
| commit | 25f8606a6dab595eb7a92fce9be32e0489079964 (patch) | |
| tree | 66ab40014264b8ef8567831ba438e29dd672b255 /src/core/hle/kernel/scheduler.cpp | |
| parent | Kernel_Thread: Eliminate most global accessors. (diff) | |
| download | yuzu-25f8606a6dab595eb7a92fce9be32e0489079964.tar.gz yuzu-25f8606a6dab595eb7a92fce9be32e0489079964.tar.xz yuzu-25f8606a6dab595eb7a92fce9be32e0489079964.zip | |
Kernel Scheduler: Make sure the global scheduler shutdowns correctly.
Diffstat (limited to 'src/core/hle/kernel/scheduler.cpp')
| -rw-r--r-- | src/core/hle/kernel/scheduler.cpp | 8 |
1 files changed, 8 insertions, 0 deletions
diff --git a/src/core/hle/kernel/scheduler.cpp b/src/core/hle/kernel/scheduler.cpp index 226d15d88..122106267 100644 --- a/src/core/hle/kernel/scheduler.cpp +++ b/src/core/hle/kernel/scheduler.cpp | |||
| @@ -342,6 +342,14 @@ bool GlobalScheduler::AskForReselectionOrMarkRedundant(Thread* current_thread, T | |||
| 342 | } | 342 | } |
| 343 | } | 343 | } |
| 344 | 344 | ||
| 345 | void GlobalScheduler::Shutdown() { | ||
| 346 | for (std::size_t core = 0; core < NUM_CPU_CORES; core++) { | ||
| 347 | scheduled_queue[core].clear(); | ||
| 348 | suggested_queue[core].clear(); | ||
| 349 | } | ||
| 350 | thread_list.clear(); | ||
| 351 | } | ||
| 352 | |||
| 345 | GlobalScheduler::~GlobalScheduler() = default; | 353 | GlobalScheduler::~GlobalScheduler() = default; |
| 346 | 354 | ||
| 347 | Scheduler::Scheduler(Core::System& system, Core::ARM_Interface& cpu_core, u32 core_id) | 355 | Scheduler::Scheduler(Core::System& system, Core::ARM_Interface& cpu_core, u32 core_id) |