Python中time.sleep(0.001)真的只等待1毫秒吗?
在windows上,进行简单的编程验证上述问题。
import timewhile True:st = time.time()time.sleep(0.001)et = time.time()print('dt={dt}'.format(dt=et - st))
返回结果:
dt=0.001966238021850586
dt=0.001010894775390625
dt=0.0020058155059814453
dt=0.0010018348693847656
dt=0.001966238021850586
dt=0.0020215511322021484
dt=0.0019714832305908203
dt=0.0010178089141845703
dt=0.0019807815551757812
dt=0.0010159015655517578
dt=0.001965761184692383
…
大部分时长都在2ms左右。而且即便将0.001
改至更小,仍是2ms,这与操作系统有关,具体机制未做深入研究。如果需要精确定时需要注意这个问题。
下面的代码用在接收线程中,当连续1秒钟没有数据是会抛出警告,由于需要响应外部stop或者pause操作,所以sleep的时间片段都不能太长。
no_frame_time = 0while True:if self._stop:logger.info(f"xxxx stop.")breakif self._pause:time.sleep(0.01)continueif len(self.msg_deque) == 0:st = time.time()time.sleep(0.001)# no_frame_time += 0.001 # 这写法由于sleep不准确,导致最早no_frame_time与实际值误差特别大et = time.time() - stno_frame_time += et # 此处是累积时间if no_frame_time > 1:logging.warning("xxxx not arrived in last second.")self.fps_signal.emit(0)no_frame_time = 0continueelse:no_frame_time = 0# ... 省略任务主体
Python中time.sleep(0.001)真的只等待1毫秒吗?相关推荐
- python中的axis=0和1代表什么
python中的axis=0和1代表什么 之前一直很疑惑axis=0和axis=1到底什么时候代表按行操作.什么时候是按列操作.记得在R中也有类似的问题(0代表行.1代表列). 在(caiqingfe ...
- Python中的X[:,0]、X[:,1]、X[:,:,0]、X[:,:,1]、X[:,m:n]和X[:,:,m:n]
Python中对于数组和列表进行切片操作是很频繁的,当然对于切片的操作可供我们直接使用的函数也是很遍历了,我们今天主要简单总结一下常用集中索引化方式,希望对大家有所帮助吧. 对于列表的切片比较简单,在 ...
- python中表达式4**0.5的值为_Python内置函数__用来返回序列中的最小元素
[填空题]表达式 int(4**0.5) 的值为 [判断题]3+4j不是合法的Python表达式. [填空题]已知列表对象x = ['11', '2', '3'],则表达式 max(x) 的值为 [填 ...
- Python中的X[:,0]和X[:,1]
https://blog.csdn.net/csj664103736/article/details/72828584 python中 x=x[1:] 是什么意思 将x的第二位到最后一位的内容赋给x. ...
- python中true代表0还是1_python 中的True和1及False和0是可以等价比较及是否是bool类型...
python 中的True和1及False和0是可以等价比较及是否是bool类型 1.True和1及False和0是可以等价比较 [root@10.144.5.223 root]# cat test_ ...
- python中表达式4**0.5的值为_int(4**0.5)
[判断题]经过过滤的城市生活污水可以作为灌溉绿色食品基地的用水. (5.0分) [判断题]同一种原料可以同时来自获得绿色食品认证的原料和未获得绿色食品认证的原料. [判断题]周边20km无工业的高海拔 ...
- python中123+5.0的执行结果_python实战笔记(一)
[Python注释] [Python变量] [Python运算符] [Python输入输出] * [输入函数] * [输出函数(3.x)] * [格式化输出] [分支] [循环] ### ...
- python中123+5.0的执行结果_123+5.0的执行结果为()_学小易找答案
[单选题]对字符串进行格式化处理的方法( ). [单选题]档案统计中最基本.最经常的一种调查方式是( ). [判断题]秦皇陵是中国秦汉文化的特殊见证,是中国人的天才杰作和一种艺术类型的杰出范例. [单 ...
- turtle fillcolor_使Python中的turtle模块画图两只小羊
import turtle import time import math as m class Sheep(object):def __init__(self,xsize):self.t = tur ...
- python中关于sklearn 0.18的错误—— cannot import name comb
问题描述 ImportError Traceback (most recent call last) <ipython-input-78-534e3eb204d1> in <modu ...
最新文章
- tensorflow 做加法
- redis集群扩容和缩容_redis集群cluster搭建,扩容缩容
- 【CSS】CSS前期回顾(2)
- javascript网页精华代码集
- 用Python3解析html的几种操作方式,你都会用吗?
- Python爬虫自学之第(①)篇——爬虫伪装和反“反爬”
- Sharepoin学习笔记—架构系列—06 Sharepoint服务(Services)与服务应用程序框架(Service Application Framework) 1
- 柒上支付个人免签支付系统源码
- MySQL 的CASE WHEN 语句
- zabbix分布式监控环境搭建
- java中基本类型占了几个字节(byte、char等)
- 解密QQ的MsgEx.db消息文件格式
- 新睿云告诉您主流操作:分布式操作系统、批处理操作系统、分时操作系统优缺点分析!
- js中的symbol详解
- office2010 word 关闭很慢
- Open Graph 分享预览
- Percona 数据库
- 深信服上网行为管理开启snmp_华为路由器、深信服NGAF防火墙的SNMP配置
- 有一种动物叫做 — 狼
- Linux搭建Steam饥荒服务器教程 — SteamCMD方式
热门文章
- 电脑网线水晶头接法图解
- [树形dp][组合数] JZOJ P1794 保镖排队
- wordpressCMS插件-全套wordpressCMS插件免费
- [转载]OFDM基本原理及系统框图
- 平均指标指数与平均数指数的区别
- 信号完整性之铜皮粗糙度
- python打印文档添加条码_使用Python在Excel中批量生成条形码
- “企业级零代码黑客马拉松”决赛圆满落幕
- php微信上传图文素材,php使用curl 上传微信公共平台素材文件
- 你需要TrustedInstaller提供的权限才能对此文件进行更改