Commit 414918a9 authored by Benjamin Peterson's avatar Benjamin Peterson

use the with statement for locking the internal condition (closes #25362)

Patch by Nir Soffer.
parent b397e3b5
......@@ -511,12 +511,9 @@ class Event:
that call wait() once the flag is true will not block at all.
"""
self._cond.acquire()
try:
with self._cond:
self._flag = True
self._cond.notify_all()
finally:
self._cond.release()
def clear(self):
"""Reset the internal flag to false.
......@@ -525,11 +522,8 @@ class Event:
set the internal flag to true again.
"""
self._cond.acquire()
try:
with self._cond:
self._flag = False
finally:
self._cond.release()
def wait(self, timeout=None):
"""Block until the internal flag is true.
......@@ -546,14 +540,11 @@ class Event:
True except if a timeout is given and the operation times out.
"""
self._cond.acquire()
try:
with self._cond:
signaled = self._flag
if not signaled:
signaled = self._cond.wait(timeout)
return signaled
finally:
self._cond.release()
# A barrier class. Inspired in part by the pthread_barrier_* api and
......
Markdown is supported
0%
or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment