2013-10-21 38 views
-1

有人可以为我制定并解释调度程序,它每60秒运行一次吗?每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) 

谢谢! :)

+0

到目前为止您尝试过什么,以及您尝试过的任何问题? – admdrew

+0

@admdrew我还没有试过,因为我不知道它是如何工作的,如何将它设置为每60秒工作...这就是为什么我要求解释... –

+0

好的。你到目前为止做过什么样的互联网研究? – admdrew

回答

0

调度可以通过多种方式完成,包括使用系统的本地调度程序并让它每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) 
+0

好吧,但据我所知,这停止整个文件,而不仅仅是该功能?我有其他需要独立的功能,并且没有定时器... –

+0

这是一个新的而且相当复杂的要求!代码看起来像它可以独立运行,这使得它成为一个很好的候选者,可以在单独的线程中运行,也可以完全作为单独的进程运行。但这远远超出了问题的范围。你需要做一些设计工作。 – tdelaney