首先,我想使用threading.Timer进行无限循环,之后,我担心递归函数会超出Python中的递归限制,但是,在按如下所示进行测试后,我发现递归函数将永远执行。为什么会这样?
import threading
recursion_count=0
def recursion(count):
count=count+1
print("recursion_count: %d\n"%count)
t = threading.Timer(0.1, recursion, (count,))
t.start()
if __name__=='__main__':
recursion(recursion_count)
答案 0 :(得分:0)
不超过任何递归限制的简单原因是双重的:
如果要超出限制,请等待每个启动的线程从启动它的线程中完成。