13 lines
491 B
Python
13 lines
491 B
Python
import time
|
|
import timeit
|
|
|
|
# sleep can be lower than requested value in some platforms: https://bugs.python.org/issue31539
|
|
# We add padding here to compensate for that.
|
|
sleep_padding = 15.0
|
|
|
|
def sleep_at_least(sleep_in_ms):
|
|
sleep_until = timeit.default_timer() + (sleep_in_ms / 1E3)
|
|
time.sleep((sleep_in_ms + sleep_padding) / 1E3)
|
|
# Check if the padding was sufficient; if not, sleep again.
|
|
while timeit.default_timer() < sleep_until:
|
|
time.sleep(sleep_padding / 1E3)
|