This issue tracker has been migrated to GitHub, and is currently read-only.
For more information, see the GitHub FAQs in the Python's Developer Guide.

Author vstinner
Recipients vstinner
Date 2017-06-21.22:38:43
SpamBayes Score -1.0
Marked as misclassified Yes
Message-id <1498084723.44.0.281135325364.issue30727@psf.upfronthosting.co.za>
In-reply-to
Content
test.test_threading.ConditionTests.test_notify() tests the threading._Condition.

threading._Condition uses internally a threading._RLock.

threading._RLock uses an internal lock created with thread.allocate_lock().

thread.allocate_lock() calls internally PyThread_allocate_lock(). On my Linux (Fedora 25) and FreeBSD (FreeBSD 11 VM) machines, PyThread_allocate_lock() calls sem_init(): POSIX pthread semaphores.

In Python 3, RLock was implemented in C for speed (the new Python 3.0 io module was slow because of RLock performance): see bpo-3001.

I know at least one race condition in Python 2.7 RLock: bpo-13697, RLock bug with signals.
History
Date User Action Args
2017-06-21 22:38:43vstinnersetrecipients: + vstinner
2017-06-21 22:38:43vstinnersetmessageid: <1498084723.44.0.281135325364.issue30727@psf.upfronthosting.co.za>
2017-06-21 22:38:43vstinnerlinkissue30727 messages
2017-06-21 22:38:43vstinnercreate