我可以给它 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/