| … | … | @@ -457,6 +457,7 @@ void async_buffer<Writer, Element>::barrier(const Element& elt) |
| 457 | 457 | // Set up the barrier: each thread must process exactly one element |
| 458 | 458 | _barrier_remaining = _thread_count; |
| 459 | 459 | _barrier_phase++; |
| 460 | _barrier_remaining.notify_all(); // Wake workers checking phase condition | |
| 460 | 461 | |
| 461 | 462 | // Enqueue one element for each thread. |
| 462 | 463 | for (unsigned int i = 0; i < _thread_count; i++) |
| … | … | @@ -371,6 +371,7 @@ void async_caller<Writer, Element>::barrier(const Element& elt) |
| 371 | 371 | // Set up the barrier: each thread must process exactly one element |
| 372 | 372 | _barrier_remaining = _thread_count; |
| 373 | 373 | _barrier_phase++; |
| 374 | _barrier_remaining.notify_all(); // Wake workers checking phase condition | |
| 374 | 375 | |
| 375 | 376 | // Enqueue one element for each thread. |
| 376 | 377 | for (unsigned int i = 0; i < _thread_count; i++) |