Implement MvL's improvement on __context__ in Condition;

this can just call __context__ on the underlying lock.
(The same change for Semaphore does *not* work!)
This commit is contained in:
Guido van Rossum 2006-04-25 20:12:45 +00:00
parent 4e1777de63
commit 8f56d02309
1 changed files with 1 additions and 5 deletions

View File

@ -164,7 +164,6 @@ class _Condition(_Verbose):
self.__lock = lock
# Export the lock's acquire() and release() methods
self.acquire = lock.acquire
self.__enter__ = self.acquire
self.release = lock.release
# If the lock defines _release_save() and/or _acquire_restore(),
# these override the default implementations (which just call
@ -184,10 +183,7 @@ class _Condition(_Verbose):
self.__waiters = []
def __context__(self):
return self
def __exit__(self, t, v, tb):
self.release()
return self.__lock.__context__()
def __repr__(self):
return "<Condition(%s, %d)>" % (self.__lock, len(self.__waiters))