Initial work to support changing thread core on the scheduler, also some cond var priority fixes
This commit is contained in:
parent
3603497a13
commit
4546d1b9be
9 changed files with 442 additions and 199 deletions
|
@ -38,7 +38,9 @@ namespace Ryujinx.Core.OsHle
|
|||
|
||||
public KProcessScheduler Scheduler { get; private set; }
|
||||
|
||||
public KThread ThreadArbiterList { get; set; }
|
||||
public KThread ThreadArbiterListHead { get; set; }
|
||||
|
||||
public object ThreadArbiterListLock { get; private set; }
|
||||
|
||||
public KProcessHandleTable HandleTable { get; private set; }
|
||||
|
||||
|
@ -70,6 +72,8 @@ namespace Ryujinx.Core.OsHle
|
|||
|
||||
Memory = new AMemory();
|
||||
|
||||
ThreadArbiterListLock = new object();
|
||||
|
||||
HandleTable = new KProcessHandleTable();
|
||||
|
||||
AppletState = new AppletStateMgr();
|
||||
|
@ -196,7 +200,7 @@ namespace Ryujinx.Core.OsHle
|
|||
|
||||
AThread CpuThread = new AThread(GetTranslator(), Memory, EntryPoint);
|
||||
|
||||
KThread Thread = new KThread(CpuThread, ProcessorId, Priority);
|
||||
KThread Thread = new KThread(CpuThread, this, ProcessorId, Priority);
|
||||
|
||||
int Handle = HandleTable.OpenHandle(Thread);
|
||||
|
||||
|
|
Loading…
Add table
Add a link
Reference in a new issue