我有以下问题:我需要一个每分钟运行的程序。我已经设法用python的时间模块和无限的while循环来做到这一点。它看起来像这样:
while True:
time_now = tm.gmtime(tm.time())
min_now = time_now.tm_min
if min_now - min_then == 1 or min_now - min_then == -59:
min_then = min_now
......
循环每秒运行大约 150.000 次,虽然我认为一般性能不会受到损害,但我想知道是否有其他选择。
我可以修改 while 循环的重新运行次数吗?或者算法(在汇编程序、机器代码等中)是否在完成后跳回到开头?我可以使用“等待”命令之类的命令吗?这会有所帮助吗?
感谢收听(和回答;)),
最好的祝愿,
最大限度
编辑:
A sleep
-command 确实解决了我的问题。我忘了提到重播必须每整整一分钟进行一次。睡眠 60 秒不会令人满意,但是,我使用了西欢的链接提到的方式:执行循环后,我使用sleep(59.9-time_now.tm_sec)
. 这将 CPU 使用率降低到 1%。出色的。并且:谢谢大家的帮助!我想投票给你,但我没有足够的声誉:D sry
再见!