Message 403631 - Python tracker

Message403631

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 2021-10-11.08:28:27
SpamBayes Score -1.0
Marked as misclassified Yes
Message-id <1633940907.8.0.793399065339.issue45429@roundup.psfhosted.org>
In-reply-to
Content
In bpo-21302, the Windows implementation of time.sleep() was modified to use a waitable timer:

New changeset 58f8adfda3c2b42f654a55500e8e3a6433cb95f2 by Victor Stinner in branch 'main':
bpo-21302: time.sleep() uses waitable timer on Windows (GH-28483)
https://github.com/python/cpython/commit/58f8adfda3c2b42f654a55500e8e3a6433cb95f2

It now calls the functions:

* CreateWaitableTimerW()
* SetWaitableTimer()
* WaitForMultipleObjects()

While SetWaitableTimer() has a resolution of 100 ns, the timer has a resolution of 15.6 ms in practice.

We could use the undocumented CREATE_WAITABLE_TIMER_HIGH_RESOLUTION flag with CreateWaitableTimerEx(). See: https://bugs.python.org/issue21302#msg403550

See also:

* https://randomascii.wordpress.com/2013/07/08/windows-timer-resolution-megawatts-wasted/
* https://vstinner.readthedocs.io/windows.html#time
History
Date User Action Args
2021-10-11 08:28:27vstinnersetrecipients: + vstinner
2021-10-11 08:28:27vstinnersetmessageid: <1633940907.8.0.793399065339.issue45429@roundup.psfhosted.org>
2021-10-11 08:28:27vstinnerlinkissue45429 messages
2021-10-11 08:28:27vstinnercreate