Python 脚本无法正确终止

flo*_*sch 5 python debugging pyqt

python main.py我有一个 python 脚本,我在终端上调用它。它启动一个 Qt-GUI,它可以正确执行,并在我关闭 GUI 时终止。

但是,有时会打印最后一条调试消息“over and out”,但脚本本身不会终止。ctrl+ cctrl+dctrl+z对执行没有任何影响。在我看来,当程序内部抛出异常(并被 GUI 捕获)时,就会发生这种情况。

我不知道如何调试这个问题,因为它显然不会在 GUI 本身中发生。我该如何调试并找出我做错了什么?

if __name__ == '__main__':
    import sys 

    app = QApplication(sys.argv)
    form = MainGui()
    form.show()
    app.exec_()
    print "over and out"
Run Code Online (Sandbox Code Playgroud)

编辑:在我看来,好像最后还有一些线程仍然处于活动状态。但是,我没有明确地使用线程(我不知道 Qt 内部做了什么......)。有没有办法查看到底所有正在运行的线程?

编辑2:哦我的天啊。解决方案很简单,就是重新启动我的系统。不知何故,我的操作系统做了一些疯狂的事情并阻止了脚本终止。

flo*_*sch 0

解决方案很简单,就是重新启动我的系统。不知何故,我的操作系统做了一些疯狂的事情并阻止了脚本终止。