diff options
author | bunnei <bunneidev@gmail.com> | 2018-08-13 04:13:14 +0200 |
---|---|---|
committer | GitHub <noreply@github.com> | 2018-08-13 04:13:14 +0200 |
commit | 9608f51cdee2dd1d2bb493b02b109b1b280dfc28 (patch) | |
tree | 5b1d179c66eadc53c0ba534680a91ade726d08be | |
parent | Merge pull request #1042 from Subv/races (diff) | |
parent | scheduler: Make HaveReadyThreads() a const member function (diff) | |
download | yuzu-9608f51cdee2dd1d2bb493b02b109b1b280dfc28.tar yuzu-9608f51cdee2dd1d2bb493b02b109b1b280dfc28.tar.gz yuzu-9608f51cdee2dd1d2bb493b02b109b1b280dfc28.tar.bz2 yuzu-9608f51cdee2dd1d2bb493b02b109b1b280dfc28.tar.lz yuzu-9608f51cdee2dd1d2bb493b02b109b1b280dfc28.tar.xz yuzu-9608f51cdee2dd1d2bb493b02b109b1b280dfc28.tar.zst yuzu-9608f51cdee2dd1d2bb493b02b109b1b280dfc28.zip |
Diffstat (limited to '')
-rw-r--r-- | src/common/thread_queue_list.h | 10 | ||||
-rw-r--r-- | src/core/hle/kernel/scheduler.cpp | 2 | ||||
-rw-r--r-- | src/core/hle/kernel/scheduler.h | 2 |
3 files changed, 7 insertions, 7 deletions
diff --git a/src/common/thread_queue_list.h b/src/common/thread_queue_list.h index 38a450d69..133122c5f 100644 --- a/src/common/thread_queue_list.h +++ b/src/common/thread_queue_list.h @@ -16,7 +16,7 @@ struct ThreadQueueList { // (dynamically resizable) circular buffers to remove their overhead when // inserting and popping. - typedef unsigned int Priority; + using Priority = unsigned int; // Number of priority levels. (Valid levels are [0..NUM_QUEUES).) static const Priority NUM_QUEUES = N; @@ -26,9 +26,9 @@ struct ThreadQueueList { } // Only for debugging, returns priority level. - Priority contains(const T& uid) { + Priority contains(const T& uid) const { for (Priority i = 0; i < NUM_QUEUES; ++i) { - Queue& cur = queues[i]; + const Queue& cur = queues[i]; if (std::find(cur.data.cbegin(), cur.data.cend(), uid) != cur.data.cend()) { return i; } @@ -37,8 +37,8 @@ struct ThreadQueueList { return -1; } - T get_first() { - Queue* cur = first; + T get_first() const { + const Queue* cur = first; while (cur != nullptr) { if (!cur->data.empty()) { return cur->data.front(); diff --git a/src/core/hle/kernel/scheduler.cpp b/src/core/hle/kernel/scheduler.cpp index 94065c736..e770b9103 100644 --- a/src/core/hle/kernel/scheduler.cpp +++ b/src/core/hle/kernel/scheduler.cpp @@ -25,7 +25,7 @@ Scheduler::~Scheduler() { } } -bool Scheduler::HaveReadyThreads() { +bool Scheduler::HaveReadyThreads() const { std::lock_guard<std::mutex> lock(scheduler_mutex); return ready_queue.get_first() != nullptr; } diff --git a/src/core/hle/kernel/scheduler.h b/src/core/hle/kernel/scheduler.h index 1a4ee8f36..6a61ef64e 100644 --- a/src/core/hle/kernel/scheduler.h +++ b/src/core/hle/kernel/scheduler.h @@ -21,7 +21,7 @@ public: ~Scheduler(); /// Returns whether there are any threads that are ready to run. - bool HaveReadyThreads(); + bool HaveReadyThreads() const; /// Reschedules to the next available thread (call after current thread is suspended) void Reschedule(); |