Tim Peters wrote: > Does > > with cv: > > work to replace the outer (== only) acquire/try/finally/release dance?
Indeed it does - although implemented in a somewhat convoluted way: A lock *is* a context (or is that "context manager"), i.e. it implements def __context__(self): return self __enter__=acquire def __exit__(self,*args): return self.release() #roughly A _Condition *has* a lock, so it could become the context (manager?) through def __context__(self): return self.lock However, instead of doing that, it does def __context__(self): return self # roughly: __enter__ is actually set in __init__ to self.lock.acquire def __enter__(self): return self.acquire() def __exit__(self): return self.release Looks somewhat redundant to me, but correct. Regards, Martin _______________________________________________ Python-Dev mailing list Python-Dev@python.org http://mail.python.org/mailman/listinfo/python-dev Unsubscribe: http://mail.python.org/mailman/options/python-dev/archive%40mail-archive.com