aboutsummaryrefslogtreecommitdiff
path: root/Ryujinx.HLE/HOS/Kernel/Threading/KCoreContext.cs
diff options
context:
space:
mode:
Diffstat (limited to 'Ryujinx.HLE/HOS/Kernel/Threading/KCoreContext.cs')
-rw-r--r--Ryujinx.HLE/HOS/Kernel/Threading/KCoreContext.cs79
1 files changed, 0 insertions, 79 deletions
diff --git a/Ryujinx.HLE/HOS/Kernel/Threading/KCoreContext.cs b/Ryujinx.HLE/HOS/Kernel/Threading/KCoreContext.cs
deleted file mode 100644
index 0aa12b0d..00000000
--- a/Ryujinx.HLE/HOS/Kernel/Threading/KCoreContext.cs
+++ /dev/null
@@ -1,79 +0,0 @@
-using Ryujinx.Common;
-
-namespace Ryujinx.HLE.HOS.Kernel.Threading
-{
- class KCoreContext
- {
- private KScheduler _scheduler;
-
- private HleCoreManager _coreManager;
-
- public bool ContextSwitchNeeded { get; private set; }
-
- public long LastContextSwitchTime { get; private set; }
-
- public long TotalIdleTimeTicks { get; private set; } //TODO
-
- public KThread CurrentThread { get; private set; }
- public KThread SelectedThread { get; private set; }
-
- public KCoreContext(KScheduler scheduler, HleCoreManager coreManager)
- {
- _scheduler = scheduler;
- _coreManager = coreManager;
- }
-
- public void SelectThread(KThread thread)
- {
- SelectedThread = thread;
-
- if (SelectedThread != CurrentThread)
- {
- ContextSwitchNeeded = true;
- }
- }
-
- public void UpdateCurrentThread()
- {
- ContextSwitchNeeded = false;
-
- LastContextSwitchTime = PerformanceCounter.ElapsedMilliseconds;
-
- CurrentThread = SelectedThread;
-
- if (CurrentThread != null)
- {
- long currentTime = PerformanceCounter.ElapsedMilliseconds;
-
- CurrentThread.TotalTimeRunning += currentTime - CurrentThread.LastScheduledTime;
- CurrentThread.LastScheduledTime = currentTime;
- }
- }
-
- public void ContextSwitch()
- {
- ContextSwitchNeeded = false;
-
- LastContextSwitchTime = PerformanceCounter.ElapsedMilliseconds;
-
- if (CurrentThread != null)
- {
- _coreManager.Reset(CurrentThread.HostThread);
- }
-
- CurrentThread = SelectedThread;
-
- if (CurrentThread != null)
- {
- long currentTime = PerformanceCounter.ElapsedMilliseconds;
-
- CurrentThread.TotalTimeRunning += currentTime - CurrentThread.LastScheduledTime;
- CurrentThread.LastScheduledTime = currentTime;
-
- _coreManager.Set(CurrentThread.HostThread);
-
- CurrentThread.Execute();
- }
- }
- }
-} \ No newline at end of file