diff --git a/tests/pipeline/test_condition_var.py b/tests/pipeline/test_condition_var.py index 6aa8bcf320..3458d1c9b6 100644 --- a/tests/pipeline/test_condition_var.py +++ b/tests/pipeline/test_condition_var.py @@ -123,12 +123,16 @@ def test_cvar_notify_all_threads(num_threads): break assert state['waiting'] == num_threads - m.release() # OK, now signal it, and yield. All threads must unblock. cv.notify_all() - yield_thread() - m.acquire() + for i in range(1000): + m.release() + yield_thread() + m.acquire() + if state['waiting'] == 0: + break + assert state['waiting'] == 0 m.release()