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 josh.r
Recipients josh.r, kristjan.jonsson, paul.moore, steve.dower, tim.golden, zach.ware
Date 2017-03-22.01:33:15
SpamBayes Score -1.0
Marked as misclassified Yes
Message-id <1490146396.76.0.76409234296.issue29871@psf.upfronthosting.co.za>
In-reply-to
Content
Kristjan wrote improved locking primitives in #15038 that use the new (in Vista) SRWLock and Condition Variable APIs. SRWLocks (used in exclusive mode only) replace Critical Sections, which is slower than SRWLock and provides no features we use that might justify it. Condition Variables replace Semaphores, where the former is user mode (cheap) and the latter kernel mode (expensive).

These changes remain disabled by default.

Given that CPython dropped support for pre-Vista OSes in 3.5, I propose enabling the faster locking primitives by default. The PR I'll submit leaves the condition variable emulation code in the source so it's available to people who might try to build XP/WS03 compatible code, it just tweaks the define so it defaults to using the Vista+ APIs.

Based on the numbers from #15038, we should expect to see a significant improvement in speed.
History
Date User Action Args
2017-03-22 01:33:16josh.rsetrecipients: + josh.r, paul.moore, kristjan.jonsson, tim.golden, zach.ware, steve.dower
2017-03-22 01:33:16josh.rsetmessageid: <1490146396.76.0.76409234296.issue29871@psf.upfronthosting.co.za>
2017-03-22 01:33:16josh.rlinkissue29871 messages
2017-03-22 01:33:15josh.rcreate