0
0
Fork 0
This repository has been archived on 2024-10-12. You can view files and clone it, but cannot push or open issues or pull requests.
ryujinx-final/Ryujinx.HLE/HOS/Kernel/KSynchronizationObject.cs

38 lines
845 B
C#
Raw Normal View History

using System.Collections.Generic;
namespace Ryujinx.HLE.HOS.Kernel
{
class KSynchronizationObject
{
public LinkedList<KThread> WaitingThreads;
protected Horizon System;
public KSynchronizationObject(Horizon System)
{
this.System = System;
WaitingThreads = new LinkedList<KThread>();
}
public LinkedListNode<KThread> AddWaitingThread(KThread Thread)
{
return WaitingThreads.AddLast(Thread);
}
public void RemoveWaitingThread(LinkedListNode<KThread> Node)
{
WaitingThreads.Remove(Node);
}
public virtual void Signal()
{
System.Synchronization.SignalObject(this);
}
public virtual bool IsSignaled()
{
return false;
}
}
}