aboutsummaryrefslogtreecommitdiff
path: root/Ryujinx.HLE/HOS/Kernel/KCriticalSection.cs
diff options
context:
space:
mode:
authorAlex Barney <thealexbarney@gmail.com>2018-12-04 14:23:37 -0600
committergdkchan <gab.dark.100@gmail.com>2018-12-04 18:23:37 -0200
commit85dbb9559ad317a657dafd24da27fec4b3f5250f (patch)
treeecd92931bc2146e549484d9a3af308469089ad4e /Ryujinx.HLE/HOS/Kernel/KCriticalSection.cs
parentc86aacde76b5f8e503e2b412385c8491ecc86b3b (diff)
Adjust naming conventions and general refactoring in HLE Project (#490)
* Rename enum fields * Naming conventions * Remove unneeded ".this" * Remove unneeded semicolons * Remove unused Usings * Don't use var * Remove unneeded enum underlying types * Explicitly label class visibility * Remove unneeded @ prefixes * Remove unneeded commas * Remove unneeded if expressions * Method doesn't use unsafe code * Remove unneeded casts * Initialized objects don't need an empty constructor * Remove settings from DotSettings * Revert "Explicitly label class visibility" This reverts commit ad5eb5787cc5b27a4631cd46ef5f551c4ae95e51. * Small changes * Revert external enum renaming * Changes from feedback * Remove unneeded property setters
Diffstat (limited to 'Ryujinx.HLE/HOS/Kernel/KCriticalSection.cs')
-rw-r--r--Ryujinx.HLE/HOS/Kernel/KCriticalSection.cs50
1 files changed, 25 insertions, 25 deletions
diff --git a/Ryujinx.HLE/HOS/Kernel/KCriticalSection.cs b/Ryujinx.HLE/HOS/Kernel/KCriticalSection.cs
index b02a1195..4bafa69d 100644
--- a/Ryujinx.HLE/HOS/Kernel/KCriticalSection.cs
+++ b/Ryujinx.HLE/HOS/Kernel/KCriticalSection.cs
@@ -5,15 +5,15 @@ namespace Ryujinx.HLE.HOS.Kernel
{
class KCriticalSection
{
- private Horizon System;
+ private Horizon _system;
- public object LockObj { get; private set; }
+ public object LockObj { get; }
- private int RecursionCount;
+ private int _recursionCount;
- public KCriticalSection(Horizon System)
+ public KCriticalSection(Horizon system)
{
- this.System = System;
+ _system = system;
LockObj = new object();
}
@@ -22,53 +22,53 @@ namespace Ryujinx.HLE.HOS.Kernel
{
Monitor.Enter(LockObj);
- RecursionCount++;
+ _recursionCount++;
}
public void Leave()
{
- if (RecursionCount == 0)
+ if (_recursionCount == 0)
{
return;
}
- bool DoContextSwitch = false;
+ bool doContextSwitch = false;
- if (--RecursionCount == 0)
+ if (--_recursionCount == 0)
{
- if (System.Scheduler.ThreadReselectionRequested)
+ if (_system.Scheduler.ThreadReselectionRequested)
{
- System.Scheduler.SelectThreads();
+ _system.Scheduler.SelectThreads();
}
Monitor.Exit(LockObj);
- if (System.Scheduler.MultiCoreScheduling)
+ if (_system.Scheduler.MultiCoreScheduling)
{
- lock (System.Scheduler.CoreContexts)
+ lock (_system.Scheduler.CoreContexts)
{
- for (int Core = 0; Core < KScheduler.CpuCoresCount; Core++)
+ for (int core = 0; core < KScheduler.CpuCoresCount; core++)
{
- KCoreContext CoreContext = System.Scheduler.CoreContexts[Core];
+ KCoreContext coreContext = _system.Scheduler.CoreContexts[core];
- if (CoreContext.ContextSwitchNeeded)
+ if (coreContext.ContextSwitchNeeded)
{
- CpuThread CurrentHleThread = CoreContext.CurrentThread?.Context;
+ CpuThread currentHleThread = coreContext.CurrentThread?.Context;
- if (CurrentHleThread == null)
+ if (currentHleThread == null)
{
//Nothing is running, we can perform the context switch immediately.
- CoreContext.ContextSwitch();
+ coreContext.ContextSwitch();
}
- else if (CurrentHleThread.IsCurrentThread())
+ else if (currentHleThread.IsCurrentThread())
{
//Thread running on the current core, context switch will block.
- DoContextSwitch = true;
+ doContextSwitch = true;
}
else
{
//Thread running on another core, request a interrupt.
- CurrentHleThread.RequestInterrupt();
+ currentHleThread.RequestInterrupt();
}
}
}
@@ -76,7 +76,7 @@ namespace Ryujinx.HLE.HOS.Kernel
}
else
{
- DoContextSwitch = true;
+ doContextSwitch = true;
}
}
else
@@ -84,9 +84,9 @@ namespace Ryujinx.HLE.HOS.Kernel
Monitor.Exit(LockObj);
}
- if (DoContextSwitch)
+ if (doContextSwitch)
{
- System.Scheduler.ContextSwitch();
+ _system.Scheduler.ContextSwitch();
}
}
}