New submission from 张晓林 :
the python document say Condition work will Locks, like RLock...
but i find it not work with Semaphore, because Condition._is_owned is like this
def _is_owned(self):
# Return True if lock is owned by current_thread.
# This method is called only if _lock doesn't have _is_owned().
if self._lock.acquire(0):
self._lock.release()
return False
else:
return True
this work for RLock, but not work for Semaphore, and Semaphore do not have it's
own _is_owned implement.
i spend a lot of time on this issue. maybe fix it, or document it out?
--
messages: 305807
nosy: 张晓林
priority: normal
severity: normal
status: open
title: threading.Condition can not work with threading.Semaphore
type: resource usage
versions: Python 3.6
___
Python tracker
<https://bugs.python.org/issue31977>
___
___
Python-bugs-list mailing list
Unsubscribe:
https://mail.python.org/mailman/options/python-bugs-list/archive%40mail-archive.com