首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >当线程运行时wxpython笔记本面板挂起。

当线程运行时wxpython笔记本面板挂起。
EN

Stack Overflow用户
提问于 2015-02-17 08:41:59
回答 1查看 80关注 0票数 0

我正在尝试使用wxpython开发一个gui,它有3-4个笔记本面板,其中一个面板(主面板)调用另一个名为abc.py的python脚本。在这个abc.py中,我同时运行多个(>10)线程。当我点击主面板上的run按钮时,它会同时启动这些abc.py脚本线程。这里我面临的问题是我的wxpython笔记本会在“当我点击run按钮并连接所有线程”之间挂起时间。在此期间,我无法控制面板上的其他按钮,也无法在面板之间切换。我的窗户在这段时间里被冻结了。有什么问题吗?如果有人能引导我走上正确的道路,避免这个问题,我会非常感激的。谢谢你!

EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2015-02-17 15:05:05

您还需要将对abc.py的调用(我想是用popen )包装到一个线程中,否则GUI将被阻塞。当外部脚本中的进程正在收集它的答案时,您必须以线程安全的方式返回它(重要!)敬wxPython

一个更好的方法是从abc.py导入,如果可能的话,然后在长时间运行的线程中旋转导入的对象。

有关如何与后台线程安全通信的说明,请参阅wxPython维基。我个人认为最后一个例子是最容易理解和实现的。

票数 1
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/28557816

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档