我有以下代码,将运行24小时,但只有10-20分钟后,我得到错误最大递归深度达到。我的代码如下
def startEnd():
flag = 0
f = open('file')
lq = f.readlines()
cur2 = lq[0]
cur1 = datetime.datetime.now()
while flag == 0:
if cur1 == cur2: # cur2 is datetime read from file
q.put(True)
flag = 1
else:
flag = 0
startEnd()
在下面的代码中如何避免递归?我需要退出while循环,因为cur2值改变了。在
我的另一个问题是,由于我的代码需要24小时运行,从长远来看,下面的代码是否也会导致递归深度错误。在
^{pr2}$
关于第一个函数-只需将所有内容放入while循环中:
请注意,您的第二个函数不是递归的,它永远不会触发递归深度错误。是的,
planIncr
被传递给threading.Timer
,但不是由该调用执行的。planIncr
稍后由其他线程执行,调用planIncr
开始的线程看到planIncr
立即返回。在相关问题 更多 >
编程相关推荐