使用Python 2.6,Twisted 10.1和GTK + 2.22,安裝了最新的pygtk,我在關閉時遇到問題。當我關閉應用程序並關閉反應堆(當然使用gtk2reactor
)時,應用程序會凍結。Twisted + Gtk - 關閉不正常
我繞過了扭曲的源代碼並添加了調試消息。結果發生的是,'shutdown'
事件觸發,PortableGtkReactor.crash
被調用,其中調用gtk.main_quit
。該事件在ReactorBase.runUntilCurrent
的末尾處理。當函數返回時,控制權轉至ReactorBase.iterate
,該控制權將控制返回至PortableGtkReactor.simulate
,該控制權返回至... gtk.main()
調用。它看起來像gtk
只是不退出。
不幸的是,當我把一個非常簡單的例子與扭曲的gtk和「Hello World」樣本放在一起時,所有事情都可以正確關閉。這一定是我的應用程序正在做的事情。直到我可以進一步瞭解它,但...
什麼可能導致這種情況?像一個應用程序可以做什麼,導致GTK不退出?該應用程序在Gtk 2.12上運行良好,Python 2.5和Twisted 8.1如果有幫助的話。