Twisted+Gtk关闭工作不正常

2024-09-28 20:53:54 发布

您现在位置:Python中文网/ 问答频道 /正文

使用python2.6、Twisted 10.1和GTK+2.22,并安装了最新的pygtk,我在关闭时遇到了问题。当我关闭应用程序并关闭reactor(当然使用gtk2reactor)时,应用程序就会冻结。在

我已经在twisted源代码中进行了调试,并添加了调试消息。最后发生的是,'shutdown'事件触发,PortableGtkReactor.crash被调用,它调用gtk.main_quit。事件在ReactorBase.runUntilCurrent结尾处处理。当函数返回时,控制权转到ReactorBase.iterate,后者将控制权返回PortableGtkReactor.simulate,后者返回到。。。gtk.main()调用。看起来gtk就是不退出。在

不幸的是,当我用twisted和gtk“Hello World”示例组合一个非常简单的示例时,一切都正确地关闭了。一定是我的应用程序在做什么。不过,在我进一步弄清楚之前。。。在

是什么原因造成的?比如一个应用程序能做些什么使gtk不能退出?这个应用在gtk2.12、python2.5和twisted8.1上运行良好,如果有帮助的话。在


Tags: 应用程序示例gtk源代码main事件twistedpygtk
2条回答

this question开始,它似乎来自导入win32ui模块。但我认为潜在的问题更严重。。在

编辑:我安装的windows7和其他东西似乎有问题。在

也许是线?Twisted reactor在关闭时连接所有线程,如果您在挂起的callInThread中执行某些操作,则循环可能无法停止。(我也不确定如果你开始自己的线程,会有什么行为。)

相关问题 更多 >