[Python-checkins] cpython: asyncio: Don't special-case GeneratorExit in Condition.wait().

guido.van.rossum python-checkins at python.org
Fri Jan 10 22:25:48 CET 2014


http://hg.python.org/cpython/rev/a6a8308cbfae
changeset: 88398:a6a8308cbfae
parent: 88396:f71f65caf53e
user: Guido van Rossum <guido at python.org>
date: Fri Jan 10 13:25:38 2014 -0800
summary:
 asyncio: Don't special-case GeneratorExit in Condition.wait().
files:
 Lib/asyncio/locks.py | 7 +------
 1 files changed, 1 insertions(+), 6 deletions(-)
diff --git a/Lib/asyncio/locks.py b/Lib/asyncio/locks.py
--- a/Lib/asyncio/locks.py
+++ b/Lib/asyncio/locks.py
@@ -251,7 +251,6 @@
 if not self.locked():
 raise RuntimeError('cannot wait on un-acquired lock')
 
- keep_lock = True
 self.release()
 try:
 fut = futures.Future(loop=self._loop)
@@ -262,12 +261,8 @@
 finally:
 self._waiters.remove(fut)
 
- except GeneratorExit:
- keep_lock = False # Prevent yield in finally clause.
- raise
 finally:
- if keep_lock:
- yield from self.acquire()
+ yield from self.acquire()
 
 @tasks.coroutine
 def wait_for(self, predicate):
-- 
Repository URL: http://hg.python.org/cpython


More information about the Python-checkins mailing list

AltStyle によって変換されたページ (->オリジナル) /