我怎么能停止计时器代码

时间:2017-09-06 22:09:48

标签: python

def data():

    a=0
    a+=1
    print(a)
    #if a==5:
      #sys.exit()
    b=threading.Timer(3, data) 
    b.start() 

if __name__ == "__main__": 
    data() 

①我想尝试停止此代码约15秒 (实际上,我需要停止时间约为16200秒,并且它必须非常精确)

(我想知道有更好的计时器代码吗?)

我已尝试多次让i成为5,但我不知道该怎么做

a每次都为零。

2 个答案:

答案 0 :(得分:0)

我不确定多线程的含义是什么,但是如果你只想让代码在15秒内停止,我会试试这个:

import time
import sys
def data():
    start = time.time()
    while (start-time.time()<=15):
        #code
    sys.exit()

我不知道i是什么,或者它在追踪什么,但这应该有效!

答案 1 :(得分:0)

关于停止代码15秒,为什么不只是使用time.sleep()和退出sys.exit()就可以做到这样的伎俩:

import time 
import sys

def data():

    a=0
    a+=1
    print(a)
    time.sleep(15) #stop the code for 15 seconds
    if a==5:
      sys.exit()