我有一个PySide应用程序,它将一些按钮连接到一个函数调用,这个函数调用会旋转掉一堆外部进程(这不是理想的,但这是必要的。)
函数调用运行时间不到四分之一秒,但它仍然为用户提供了超出代码的机会,导致延迟,冻结或崩溃。
这引出了一些问题......
将callable连接到信号到底意味着什么?假设按钮A的点击信号连接到Python函数f。如果单击A,然后在f退出之前再次单击,PySide是否只是将另一个调用排队到f,还是做了更好的事情?
一种可能的解决方案是使f与信号断开连接,然后在退出之前重新连接。在我尝试重写之前,有没有人知道这是否有效,或者是否有更优雅的解决方案?
答案 0 :(得分:0)
我猜它确实与其他GUI工具包完全相同,即每次按下按钮都会尝试执行该功能。如果您不想这样,那么您可以采取以下几种方法:
这些是主要的。我确信那里也有一些更深奥的解决方案。