【问题标题】:How to correctly stop pyqt5 QThread?如何正确停止 pyqt5 QThread?
【发布时间】:2021-06-11 21:46:57
【问题描述】:

有一个pyqt5的程序。它有一个线程(qthread),您需要在其中对某个前端执行一些操作。我使用 QThread.msleep 来定义这个时间段,以及来自 while 循环的标志。 但是如果周期很长,那么等待退出循环需要很长时间,我想在GUI中点击按钮就完成它(但不是杀死,很快重新开始)。 源代码在这里很标准,我需要想法。
单独线程的夸张类示例。

class intrhead(QObject):
    ...
    def run(self):
        while(flag):
            ...
            QThread.msleep(period)

【问题讨论】:

  • “我用QThread.msleep来定义这个周期”:什么周期? “源代码非常标准”:标准是什么?请更清楚并提供minimal, reproducible example,我们不是千里眼,如果我们真的不明白你在做什么,我们不能给你“想法”,而且,为了什么有价值,StackOverflow 不是关于“给出想法” ,但回答
  • 你的设置我不清楚。您想在重复之间有一定的等待时间重复执行某个动作吗?

标签: python pyqt5 qthread


【解决方案1】:

正确的解决办法是拆分句号。

【讨论】:

    猜你喜欢
    • 2020-05-05
    • 2017-01-28
    • 2019-04-02
    • 1970-01-01
    • 2020-08-04
    • 2013-04-21
    • 1970-01-01
    • 2021-06-04
    • 2021-07-17
    相关资源
    最近更新 更多