ScheduledWorkItem::ScheduleClear: remove item from runnable queue

The existing behavior is unexpected: if the work item is already on the
runnable queue, it will still be triggered after a call to ScheduleClear().
This can lead to race conditions.
This commit is contained in:
Beat Küng
2020-03-09 12:06:15 +01:00
committed by Daniel Agar
parent 977b80cee9
commit 18bc6cf872
4 changed files with 15 additions and 0 deletions
@@ -89,6 +89,14 @@ WorkItem::Deinit()
}
}
void
WorkItem::ScheduleClear()
{
if (_wq != nullptr) {
_wq->Remove(this);
}
}
float
WorkItem::elapsed_time() const
{