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.
This commit is contained in:
Subv
2017-01-05 14:14:22 -05:00
parent 35aea29a77
commit 6c6117868a
3 changed files with 14 additions and 0 deletions
+4
View File
@@ -556,6 +556,10 @@ SharedPtr<Thread> SetupMainThread(u32 entry_point, s32 priority) {
return thread;
}
bool HaveReadyThreads() {
return ready_queue.get_first() != nullptr;
}
void Reschedule() {
PriorityBoostStarvedThreads();