python - python的time.sleep()有多准确?

标签 python time sleep

我可以给它 float ,例如

time.sleep(0.5)

但它的准确度如何?如果我给它

time.sleep(0.05)

它真的会休眠大约 50 毫秒吗?

最佳答案

time.sleep 函数的准确性取决于底层操作系统的 sleep 准确性。对于非实时操作系统(例如普通 Windows),您可以休眠的最小间隔约为 10-13 毫秒。当高于最低 10-13 毫秒时,我已经看到了在该时间的几毫秒内的准确 sleep 。

更新: 正如下面引用的文档中提到的,通常会在循环中进行 sleep ,这样可以确保在提早唤醒您时重新进入休眠状态。

我还应该提到,如果您运行的是 Ubuntu,您可以通过安装 rt 内核包(至少在 Ubuntu 10.04 LTS 中)来尝试伪实时内核(带有 RT_PREEMPT 补丁集)。

编辑:修正非实时 Linux 内核的最小 sleep 间隔更接近 1 毫秒,然后是 10 毫秒,但它以非确定性方式变化。

关于python - python的time.sleep()有多准确?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/58404865/

相关文章:

datetime - 如何在不解析表行的情况下更改结构上的日期格式(如 "yyyy-mm-dd")?

android - 等待信号量循环时的 SystemClock.sleep() 与 Thread.sleep()

javascript - 在 JavaScript 中每 N 秒调用一次异步函数

c++ - 等到函数完成后再继续 main(一个线程)

python - 程序输出错误的输出

python - 收到 B 的正则表达式名称

python - 推荐使用哪种 Python 内存分析器?

c - 将时间修改标记写入文件顶部

python - 如何通过 easy-install 安装特定版本的 pip? - Mac OS 小牛队

javascript - (JS) 在一天中的某个时间段启用按钮