繁体   English   中英

在PyQt4中保持活动线程

[英]keep alive thread in PyQt4

我有一个PyQt4应用程序,该应用程序有时使用tarfile模块打包一个大文件。 由于tarfile模块未实现任何回调策略,因此它将阻塞,并且Qt GUI无法响应。

我希望GUI在这段时间内保持更新。 唯一的可能性是一个单独的线程。 因此,我启动了一个QThread。 我必须在QThread中做什么才能使GUI更新? 一旦tar进程完成,我希望线程完成。

谢谢! 内森

QThread与普通的Python线程几乎相同,因此您可以使用普通的通信方法。 但是,QThreads也有一些可用的信号,因此,如果您仅连接到这些信号,就完成了。

在您的GUI代码中执行以下操作,您已经完成了很多工作:

thread = Thread()
thread.finished.connect(gui.do_update_thingy)

您还可以使用terminatedstarted信号:)

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM