gpt4 book ai didi

python-3.x - PyQt5 中的多线程

转载 作者:行者123 更新时间:2023-12-02 03:01:58 25 4
gpt4 key购买 nike

我一直在学习多线程,特别是在 PyQt 5 应用程序的上下文中。

最初我使用“threading”实现了一个版本,但后来了解到我应该使用“QThread”来允许使用信号/槽,例如:

workerThread = QThread()
workerObject = Worker(cmdlist)
workerObject.moveToThread(workerThread)
workerThread.started.connect(workerObject.run)
workerObject.finished.connect(workerThread.quit)

但是,是否可以设计一个系统:

  • 每个类都与一个在运行时创建的线程相关联。
  • 然后程序的“主要”组件可以调用其中的函数类,它们在给定的单独线程中执行类。

行为的一个例子是这样的:

thread = threading.Thread(target=self.run, args=())

但是我如何使用 QThread 实现类似的行为?
还是我对 Python 中线程的理解不正确?

最佳答案

Martin Fitzpatrick有一个关于如何使用 QThreadPools 执行此操作的惊人指南。我想这就是您要找的。

Multithreading PyQt applications with QThreadPool

关于python-3.x - PyQt5 中的多线程,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/45211218/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com