【发布时间】:2017-06-06 18:15:09
【问题描述】:
由于某种原因,我一直无法使用 python 3 创建一个简单的线程,下面的代码会打印一次“test”,然后让程序运行而不再打印任何行。
import time, threading
def test():
print("test")
threading.Timer(1, test).start()
test()
此代码似乎适用于数百万其他人,但不适用于我。
我不确定这只是打印失败还是线程根本没有运行。我已经找到并尝试了几十个类似上面的例子,但它们都给了我同样的问题(time.sleep() 也有同样的问题)。我想我可能必须在开始新线程之前取消线程,但事实证明这在循环期间有点困难,我什至不确定这是否会奏效。
【问题讨论】:
-
您是否尝试再次卸载并安装python?哪个版本?我在 windows 中尝试了 python 3.6.1 并且工作得很好。哪个OP?
-
我在两台安装了 3.6.1 版本的单独计算机上尝试了这段代码,它只打印一次测试,这会为你打印多行吗?
-
是的,确实如此……黑魔法?我不这么认为......必须是可计算的解释
标签: python multithreading python-3.x timer