Kaydet (Commit) ef660e8e authored tarafından Georg Brandl's avatar Georg Brandl

#1674032: return value of flag from Event.wait(). OKed by Guido.

üst 1d7d5325
......@@ -696,14 +696,20 @@ An event object manages an internal flag that can be set to true with the
.. method:: Event.wait([timeout])
Block until the internal flag is true. If the internal flag is true on entry,
return immediately. Otherwise, block until another thread calls :meth:`set` to
set the flag to true, or until the optional timeout occurs.
Block until the internal flag is true. If the internal flag is true on entry,
return immediately. Otherwise, block until another thread calls :meth:`set`
to set the flag to true, or until the optional timeout occurs.
When the timeout argument is present and not ``None``, it should be a floating
point number specifying a timeout for the operation in seconds (or fractions
thereof).
This method returns the internal flag on exit, so it will always return
``True`` except if a timeout is given and the operation times out.
.. versionchanged:: 2.7
Previously, the method always returned ``None``.
.. _timer-objects:
......
......@@ -186,7 +186,8 @@ class ThreadTests(unittest.TestCase):
# Now raise an exception in the worker thread.
if verbose:
print " waiting for worker thread to get started"
worker_started.wait()
ret = worker_started.wait()
self.assertTrue(ret)
if verbose:
print " verifying worker hasn't exited"
self.assert_(not t.finished)
......
......@@ -391,6 +391,7 @@ class _Event(_Verbose):
try:
if not self.__flag:
self.__cond.wait(timeout)
return self.__flag
finally:
self.__cond.release()
......
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