【发布时间】:2018-01-28 23:20:22
【问题描述】:
有很多关于它的问题,但我还不太明白。
我必须将一些代码上传到服务器才能 24/7 运行,而这段代码基本上是这样的:
while True:
variable1 = function1()
variable2 = function2()
variable3 = function3()
假设我想每隔一小时左右做一次variable2 = function2(),以提高性能(我对此不太了解,但我认为在上面放一个计时器会很好)
我不能在上面使用time.sleep(),因为代码必须继续运行
我提到了服务器的事情,因为我不知道使用系统计时器的答案是否适用于它,我仍在学习如何做到这一点。
忘了说我使用的是 Python 2.7
【问题讨论】:
-
你问的是线程吗?
-
@whackamadoodle3000 我不知道是什么,让我查一下
-
你想知道每个函数的结束需要多少时间?
-
@keyvanvafaee 我不确定我是否理解......功能 2 不需要每小时运行 100 次,我只需要一次。但是这段时间必须继续进行,所有的代码都在里面,所以我需要为那个单一的调用设置一个计时器。
-
如果您希望以 不同 的频率执行 3 个定期操作,请考虑将它们作为完全独立的进程运行,由
cron实用程序安排(您会在外部发现Python 世界,但它可以为您运行 Python 脚本,就像它可以运行其他任何东西一样)。如果你必须在同一个进程中拥有这些函数,那么听起来你需要三个函数在不同的线程中运行。 Python 可以通过threading模块为您处理。但是线程是一个深奥的话题,有一些陷阱等待粗心的人,所以去谷歌搜索吧。