Thread: Prevent waking a thread multiple times.
If a thread was woken up by something, cancel the wakeup timeout.
This commit is contained in:
parent
e213f91373
commit
b68d51ed30
|
@ -263,6 +263,9 @@ void WakeThreadAfterDelay(Thread* thread, s64 nanoseconds) {
|
|||
|
||||
/// Resumes a thread from waiting by marking it as "ready"
|
||||
void Thread::ResumeFromWait() {
|
||||
// Cancel any outstanding wakeup events
|
||||
CoreTiming::UnscheduleEvent(ThreadWakeupEventType, GetHandle());
|
||||
|
||||
status &= ~THREADSTATUS_WAIT;
|
||||
wait_object = nullptr;
|
||||
wait_type = WAITTYPE_NONE;
|
||||
|
|
Reference in New Issue