mirror of
https://git.suyu.dev/suyu/suyu.git
synced 2024-11-26 13:26:30 -05:00
Merge pull request #2077 from lioncash/virt
kernel/wait_object: Devirtualize functions related to manipulating the thread list directly
This commit is contained in:
commit
db21ac2627
5 changed files with 3 additions and 15 deletions
|
@ -44,8 +44,4 @@ ResultCode ReadableEvent::Reset() {
|
||||||
return RESULT_SUCCESS;
|
return RESULT_SUCCESS;
|
||||||
}
|
}
|
||||||
|
|
||||||
void ReadableEvent::WakeupAllWaitingThreads() {
|
|
||||||
WaitObject::WakeupAllWaitingThreads();
|
|
||||||
}
|
|
||||||
|
|
||||||
} // namespace Kernel
|
} // namespace Kernel
|
||||||
|
|
|
@ -39,8 +39,6 @@ public:
|
||||||
bool ShouldWait(Thread* thread) const override;
|
bool ShouldWait(Thread* thread) const override;
|
||||||
void Acquire(Thread* thread) override;
|
void Acquire(Thread* thread) override;
|
||||||
|
|
||||||
void WakeupAllWaitingThreads() override;
|
|
||||||
|
|
||||||
/// Unconditionally clears the readable event's state.
|
/// Unconditionally clears the readable event's state.
|
||||||
void Clear();
|
void Clear();
|
||||||
|
|
||||||
|
|
|
@ -66,10 +66,6 @@ void Timer::Clear() {
|
||||||
signaled = false;
|
signaled = false;
|
||||||
}
|
}
|
||||||
|
|
||||||
void Timer::WakeupAllWaitingThreads() {
|
|
||||||
WaitObject::WakeupAllWaitingThreads();
|
|
||||||
}
|
|
||||||
|
|
||||||
void Timer::Signal(int cycles_late) {
|
void Timer::Signal(int cycles_late) {
|
||||||
LOG_TRACE(Kernel, "Timer {} fired", GetObjectId());
|
LOG_TRACE(Kernel, "Timer {} fired", GetObjectId());
|
||||||
|
|
||||||
|
|
|
@ -51,8 +51,6 @@ public:
|
||||||
bool ShouldWait(Thread* thread) const override;
|
bool ShouldWait(Thread* thread) const override;
|
||||||
void Acquire(Thread* thread) override;
|
void Acquire(Thread* thread) override;
|
||||||
|
|
||||||
void WakeupAllWaitingThreads() override;
|
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* Starts the timer, with the specified initial delay and interval.
|
* Starts the timer, with the specified initial delay and interval.
|
||||||
* @param initial Delay until the timer is first fired
|
* @param initial Delay until the timer is first fired
|
||||||
|
|
|
@ -33,19 +33,19 @@ public:
|
||||||
* Add a thread to wait on this object
|
* Add a thread to wait on this object
|
||||||
* @param thread Pointer to thread to add
|
* @param thread Pointer to thread to add
|
||||||
*/
|
*/
|
||||||
virtual void AddWaitingThread(SharedPtr<Thread> thread);
|
void AddWaitingThread(SharedPtr<Thread> thread);
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* Removes a thread from waiting on this object (e.g. if it was resumed already)
|
* Removes a thread from waiting on this object (e.g. if it was resumed already)
|
||||||
* @param thread Pointer to thread to remove
|
* @param thread Pointer to thread to remove
|
||||||
*/
|
*/
|
||||||
virtual void RemoveWaitingThread(Thread* thread);
|
void RemoveWaitingThread(Thread* thread);
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* Wake up all threads waiting on this object that can be awoken, in priority order,
|
* Wake up all threads waiting on this object that can be awoken, in priority order,
|
||||||
* and set the synchronization result and output of the thread.
|
* and set the synchronization result and output of the thread.
|
||||||
*/
|
*/
|
||||||
virtual void WakeupAllWaitingThreads();
|
void WakeupAllWaitingThreads();
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* Wakes up a single thread waiting on this object.
|
* Wakes up a single thread waiting on this object.
|
||||||
|
|
Loading…
Reference in a new issue