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;