下面是一段代码:def display(): threading.Timer(1,display).start() print("Number")display()对于这段代码,我想问以下几点:每一秒都会产生一个新线程,对吗?每一秒最后一个线程都会死亡,因为函数完全执行,所以旧线程死亡,对吗?如果不是那么发生了什么?
1 回答
慕桂英4014372
TA贡献1871条经验 获得超13个赞
Timer
派生自Thread
,所以是的:启动了许多线程。无论您是否调用
join
,当它们被调用的函数返回(或抛出)时,线程都会死亡,但是在您这样做之前,为它们保留的资源可能会或可能不会被回收。(请注意,线程是常见垃圾收集方案的根源,因此依赖删除对Thread
对象的引用是不明智的。)
添加回答
举报
0/150
提交
取消