tests: hopefully fix sporadic test failures with condition var test
This commit is contained in:
parent
226d888ef4
commit
bf302a0838
|
|
@ -72,16 +72,22 @@ def test_cvar_notify_thread(num_threads):
|
|||
break
|
||||
|
||||
assert state['waiting'] == num_threads
|
||||
m.release()
|
||||
|
||||
# OK, now signal it, and yield. One thread must be unblocked per notify.
|
||||
for i in range(num_threads):
|
||||
cv.notify()
|
||||
yield_thread()
|
||||
m.acquire()
|
||||
assert state['waiting'] == num_threads - i - 1
|
||||
m.release()
|
||||
expected_waiters = num_threads - i - 1
|
||||
|
||||
for j in range(1000):
|
||||
m.release()
|
||||
yield_thread()
|
||||
m.acquire()
|
||||
if state['waiting'] == expected_waiters:
|
||||
break
|
||||
|
||||
assert state['waiting'] == expected_waiters
|
||||
|
||||
m.release()
|
||||
for thread in threads:
|
||||
thread.join()
|
||||
cv = None
|
||||
|
|
|
|||
Loading…
Reference in New Issue