Ver Fonte

hle: kernel: process: Add schedule count tracking, to be used for yield impl.

bunnei há 5 anos atrás
pai
commit
d58a609ae4
1 ficheiros alterados com 13 adições e 0 exclusões
  1. 13 0
      src/core/hle/kernel/process.h

+ 13 - 0
src/core/hle/kernel/process.h

@@ -216,6 +216,16 @@ public:
         total_process_running_time_ticks += ticks;
     }
 
+    /// Gets the process schedule count, used for thread yelding
+    constexpr s64 GetScheduledCount() const {
+        return schedule_count;
+    }
+
+    /// Increments the process schedule count, used for thread yielding.
+    constexpr void IncrementScheduledCount() {
+        ++schedule_count;
+    }
+
     /// Gets 8 bytes of random data for svcGetInfo RandomEntropy
     u64 GetRandomEntropy(std::size_t index) const {
         return random_entropy.at(index);
@@ -397,6 +407,9 @@ private:
     /// Name of this process
     std::string name;
 
+    /// Schedule count of this process
+    s64 schedule_count{};
+
     /// System context
     Core::System& system;
 };