From fc2266130b450952777cd3a9e47adb36960de8e7 Mon Sep 17 00:00:00 2001 From: Subv Date: Thu, 5 Jan 2017 14:14:22 -0500 Subject: Kernel: Don't attempt to yield execution in SleepThread(0) if there are no available threads to run. With this we avoid an useless temporary deschedule of the current thread. --- src/core/hle/kernel/thread.cpp | 4 ++++ 1 file changed, 4 insertions(+) (limited to 'src/core/hle/kernel/thread.cpp') diff --git a/src/core/hle/kernel/thread.cpp b/src/core/hle/kernel/thread.cpp index 9109bd10b..6cd9ff327 100644 --- a/src/core/hle/kernel/thread.cpp +++ b/src/core/hle/kernel/thread.cpp @@ -556,6 +556,10 @@ SharedPtr SetupMainThread(u32 entry_point, s32 priority) { return thread; } +bool HaveReadyThreads() { + return ready_queue.get_first() != nullptr; +} + void Reschedule() { PriorityBoostStarvedThreads(); -- cgit v1.2.3