我想编写一个PyQt应用程序,它会在一个单独的线程中生成它的窗口,这样我就可以在运行时将它的数据结构弄乱到交互式shell中。不幸的是,尝试在shell中执行exit()不会杀死应用程序,可能是因为Qt线程仍在运行。一旦我在控制台中按CTR + D或键入exit()或键入退出,我如何强制Python shell死?这是测试用例:
#!/usr/bin/python -i
from PyQt4 import QtGui
class MainWindow(QtGui.QMainWindow):
pass
def main():
import sys
app = QtGui.QApplication(sys.argv)
window = MainWindow()
window.show()
sys.exit(app.exec_())
if __name__ == '__main__':
import threading
threading.Thread(None, main).start()