【问题标题】:Schedule running function every 60 seconds?每 60 秒安排一次运行功能?
【发布时间】:2013-10-21 18:39:57
【问题描述】:

有人可以为我制作和解释调度程序,它每 60 秒运行一次吗?

sql = "SELECT * FROM economy"
cursor.execute(sql)
brojredova = cursor.rowcount
for i in range(1, brojredova):
sql2 = "UPDATE economy SET LoanTime= LoanTime - 1 WHERE ID = '%d' AND Loan > 0" % (i)
cursor.execute(sql2)

谢谢! :)

【问题讨论】:

  • 到目前为止您尝试了哪些方法,您尝试过的方法有哪些问题?
  • @admdrew 我还没有尝试过,因为我不知道它是如何工作的,如何将其设置为每 60 秒工作一次......这就是我要求解释的原因......
  • 好的。到目前为止,您在互联网上做了哪些类型的研究?
  • @admdrew 我在谷歌上搜索调度程序,但不知道它是如何工作的,我想获得这方面的示例,并附上解释,所以我也可以做其他类似的事情......
  • 不幸的是,听起来您对您有问题的主题没有最低限度的了解。一旦您完成了额外的故障排除/研究并且仍然停留在特定的问题上,我建议您在那时发布一个新问题。

标签: python mysql jython scheduler


【解决方案1】:

可以通过多种方式进行调度,包括使用系统的本机调度程序并让它每 60 秒调用一次程序。最简单的解决方案是将你的东西放在一个while循环中并使用time.sleep:

import time

while True:
    start = time.time()
    do_your_work_here()
    timeout = time.time() - start - 60.
    if timeout > 0.:
        time.sleep(timeout)

【讨论】:

  • 好的,但据我所知,这会停止整个文件,而不仅仅是那个功能?我还有其他需要独立的功能,并且没有计时器...
  • 这是一个新的且相当复杂的要求!代码看起来可以独立运行,这使得它非常适合在单独的线程中运行或完全作为单独的进程运行。但这远远超出了所问问题的范围。你需要做一些设计工作。
猜你喜欢
  • 2015-04-28
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2019-06-29
  • 2021-12-18
  • 1970-01-01
  • 2021-11-13
  • 2012-01-09
相关资源
最近更新 更多