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:
parent
4e1777de63
commit
8f56d02309
|
@ -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))
|
||||
|
|
Loading…
Reference in New Issue