Set/Get Windows Timer Resolution
Project description
━━━━━━━━
README
━━━━━━━━
Table of Contents
─────────────────
1 wres
.. 1.1 Install
.. 1.2 Usage
.. 1.3 Util
.. 1.4 details
..... 1.4.1 `set_resolution'
..... 1.4.2 `query_resolution'
.. 1.5 License
1 wres
══════
Set/Get Winsows Timer Resolution.
wres is short for Windows RESolution.
The function of this module is like Windows API [timeBeginPeriod] and
[timeEndPeriod]. But the implementation used Undocumented
[NtSetTimerResolution] of NTDLL. It offers microsecond level control.
[timeBeginPeriod]
https://msdn.microsoft.com/en-us/library/dd757624(VS.85).aspx
[timeEndPeriod]
https://msdn.microsoft.com/en-us/library/dd757626(v%3Dvs.85).aspx
[NtSetTimerResolution]
http://undocumented.ntinternals.net/index.html?page%3DUserMode%252FUndocumented%2520Functions%252FTime%252FNtSetTimerResolution.html
1.1 Install
───────────
┌────
│ pip install wres
└────
1.2 Usage
─────────
┌────
│ import wres
│
│ # Query windows timer resolution in 100-ns units
│ minres, maxres, curres = wres.query_resolution()
│
│ # Set resolution to 1.5 ms
│ # Automatically restore previous resolution when exit with statement
│ with wres.set_resolution(15000):
│ pass
│
│ # Set resolution to max resolution
│ with wres.set_resolution():
│ pass
└────
1.3 Util
────────
After installing `wres', command `windows-resolution' is available.
┌────
│ usage: windows-resolution [-h] [-s RESOLUTION] [--setmax] [--setmin] [-v]
│
│ Set system timer tesolution. Show current system timer resolution without
│ argument.
│
│ optional arguments:
│ -h, --help show this help message and exit
│ -s RESOLUTION, --set RESOLUTION
│ set resolution in 100-ns units
│ --setmax set maximum resolution
│ --setmin set minimum resolution
│ -v, --version show version
└────
1.4 details
───────────
1.4.1 `set_resolution'
╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌
Set resolution of system timer.
Input:
`DesiredResolution' [default 0], in 100-ns units. This function
will auto revision the value if it is out of range, so default 0 means
set maximum resolution.
Should be used in `with' statement, target is current resolution, in
100-ns units.
1.4.2 `query_resolution'
╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌
Query resolution of system timer.
Return a tuple of (min, max, current) resolution, in 100-ns units.
Ref to [NtQueryTimerResolution].
[NtQueryTimerResolution]
http://undocumented.ntinternals.net/index.html?page%3DUserMode%252FUndocumented%2520Functions%252FTime%252FNtQueryTimerResolution.html
1.5 License
───────────
Meme Kagurazaka (c) 2017, Public Domain.
README
━━━━━━━━
Table of Contents
─────────────────
1 wres
.. 1.1 Install
.. 1.2 Usage
.. 1.3 Util
.. 1.4 details
..... 1.4.1 `set_resolution'
..... 1.4.2 `query_resolution'
.. 1.5 License
1 wres
══════
Set/Get Winsows Timer Resolution.
wres is short for Windows RESolution.
The function of this module is like Windows API [timeBeginPeriod] and
[timeEndPeriod]. But the implementation used Undocumented
[NtSetTimerResolution] of NTDLL. It offers microsecond level control.
[timeBeginPeriod]
https://msdn.microsoft.com/en-us/library/dd757624(VS.85).aspx
[timeEndPeriod]
https://msdn.microsoft.com/en-us/library/dd757626(v%3Dvs.85).aspx
[NtSetTimerResolution]
http://undocumented.ntinternals.net/index.html?page%3DUserMode%252FUndocumented%2520Functions%252FTime%252FNtSetTimerResolution.html
1.1 Install
───────────
┌────
│ pip install wres
└────
1.2 Usage
─────────
┌────
│ import wres
│
│ # Query windows timer resolution in 100-ns units
│ minres, maxres, curres = wres.query_resolution()
│
│ # Set resolution to 1.5 ms
│ # Automatically restore previous resolution when exit with statement
│ with wres.set_resolution(15000):
│ pass
│
│ # Set resolution to max resolution
│ with wres.set_resolution():
│ pass
└────
1.3 Util
────────
After installing `wres', command `windows-resolution' is available.
┌────
│ usage: windows-resolution [-h] [-s RESOLUTION] [--setmax] [--setmin] [-v]
│
│ Set system timer tesolution. Show current system timer resolution without
│ argument.
│
│ optional arguments:
│ -h, --help show this help message and exit
│ -s RESOLUTION, --set RESOLUTION
│ set resolution in 100-ns units
│ --setmax set maximum resolution
│ --setmin set minimum resolution
│ -v, --version show version
└────
1.4 details
───────────
1.4.1 `set_resolution'
╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌
Set resolution of system timer.
Input:
`DesiredResolution' [default 0], in 100-ns units. This function
will auto revision the value if it is out of range, so default 0 means
set maximum resolution.
Should be used in `with' statement, target is current resolution, in
100-ns units.
1.4.2 `query_resolution'
╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌
Query resolution of system timer.
Return a tuple of (min, max, current) resolution, in 100-ns units.
Ref to [NtQueryTimerResolution].
[NtQueryTimerResolution]
http://undocumented.ntinternals.net/index.html?page%3DUserMode%252FUndocumented%2520Functions%252FTime%252FNtQueryTimerResolution.html
1.5 License
───────────
Meme Kagurazaka (c) 2017, Public Domain.
Project details
Download files
Download the file for your platform. If you're not sure which to choose, learn more about installing packages.
Source Distribution
wres-1.0.3.tar.gz
(3.7 kB
view details)
Built Distribution
File details
Details for the file wres-1.0.3.tar.gz
.
File metadata
- Download URL: wres-1.0.3.tar.gz
- Upload date:
- Size: 3.7 kB
- Tags: Source
- Uploaded using Trusted Publishing? No
File hashes
Algorithm | Hash digest | |
---|---|---|
SHA256 | 99301f9bded7dc0af52c5f2d184149e18027888ea1e1a7424eaab31d3376f718 |
|
MD5 | 4c0eb2884cafb4f2c682169743425ecb |
|
BLAKE2b-256 | 77bcbca6c33bef30346e586a4deee30049ebbc8786c7345ef501d7ecb83c65e7 |
File details
Details for the file wres-1.0.3-py2.py3-none-any.whl
.
File metadata
- Download URL: wres-1.0.3-py2.py3-none-any.whl
- Upload date:
- Size: 5.9 kB
- Tags: Python 2, Python 3
- Uploaded using Trusted Publishing? No
File hashes
Algorithm | Hash digest | |
---|---|---|
SHA256 | 70705fc68a7718cddb76e789ca4f66b73178c513793c1e386b48d17df96b220f |
|
MD5 | bfa30686054416f98164679a8d253b4f |
|
BLAKE2b-256 | bf2e046023e5df54d11591636409230d2eb6bcb8ad339a44368ef30d33d225cd |