| 593 | } |
| 594 | |
| 595 | void condvar_t::notify() |
| 596 | { |
| 597 | skr_wake_all_condition_vars(&cv); |
| 598 | for(uint32_t i=0; i<waiters.size(); ++i) |
| 599 | { |
| 600 | enqueue(Task{std::move(waiters[i])}, workerIndices[i]); |
| 601 | } |
| 602 | waiters.clear(); |
| 603 | workerIndices.clear(); |
| 604 | numWaiting = 0; |
| 605 | } |
| 606 | |
| 607 | void event_t::notify() |
| 608 | { |