python - 完成后如何重置线程
问题描述
我正在使用 kivy,我正在尝试找到一种方法在完成后“重置”我的线程,尽管我知道重置线程是不可能的。那么,如果我告诉它,我将如何在它之前运行一次之后运行一个线程?我有一个设置了一个按钮的屏幕,当按下该按钮时会运行一个线程 5 秒,然后在 5 秒后返回到原始屏幕,但是如果我在按下按钮后按下按钮,然后我得到一个错误说只能使用线程一次。这是线程的代码。我在屏幕第一次出现时调用它 on_pre_enter()
def countdown1():
seconds = 5
for i in range(seconds):
timeleft = seconds-i
print(str(timeleft) + " seconds remain")
time.sleep(1)
print("out of time")
sm.current = "Evaluation"
seconds = 5
countdown1_thread = threading.Thread(target = countdown1)
解决方案
尝试更换
countdown1_thread.start()
和:
threading.Thread(target = countdown1).start()
推荐阅读
- dart - 如何在 Dart 中允许不同行上的参数?
- c++ - Boost 序列化 boost::array 失败
- javascript - 如何通过请求停止 node.js 函数/循环
- python - 在python中生成具有三个类的3个圆形数据集
- java - Thymeleaf th:value 在使用 th:field 时被忽略
- python - 基于另一个相似矩阵对矩阵进行排序的 Numpyic 方法
- javascript - 在 Javascript 中使用委托(使用 XMLHttpRequest AJAX 请求的示例)
- python - WGAN-GP 生成的图像看起来很灰
- ios - 我们可以创建广播上传扩展的 Pod 或 swift 包吗?
- c# - 存储库主签名有效期已过。(NU3037)