mirror of
https://github.com/Lime3DS/Lime3DS.git
synced 2024-11-11 12:45:05 +01:00
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"
|
/// Resumes a thread from waiting by marking it as "ready"
|
||||||
void Thread::ResumeFromWait() {
|
void Thread::ResumeFromWait() {
|
||||||
|
// Cancel any outstanding wakeup events
|
||||||
|
CoreTiming::UnscheduleEvent(ThreadWakeupEventType, GetHandle());
|
||||||
|
|
||||||
status &= ~THREADSTATUS_WAIT;
|
status &= ~THREADSTATUS_WAIT;
|
||||||
wait_object = nullptr;
|
wait_object = nullptr;
|
||||||
wait_type = WAITTYPE_NONE;
|
wait_type = WAITTYPE_NONE;
|
||||||
|
Loading…
Reference in New Issue
Block a user