【问题标题】:Serious instability with pygtk 2.22 and python 2.6pygtk 2.22 和 python 2.6 严重不稳定
【发布时间】:2010-12-01 16:45:00
【问题描述】:

有人遇到过这个吗?

我参加了 GTK HelloWorld sample。它运行良好。但是,如果我 import win32ui,则它不会正常关闭(如 this question 中所述)。

还有其他问题。在缩小我的应用程序以查看导致它无法关闭的原因的过程中,我遇到了一个问题,即我正在解构我编写的一个没有问题的记录器类。在构造函数中,我有一行:

self.logger = logger

我已经注释掉了课程的其余部分,所以self.logger 甚至没有被使用。如果我保持原样,单击“Hello World”按钮时会出现此错误:

c:\python26\lib\site-packages\twisted\internet\gtk2reactor.py:350: GtkWarning: gtk_widget_destroy: assertion `GTK_IS_WIDGET (widget)' failed
  gtk.main()

如果我将行更改为:

self.logger = 0

那么错误就不会出现。这也发生在记录器类中的各种其他代码行中。我怀疑其他随机代码也会发生这种情况。但无论如何 - 设置一个甚至没有使用的变量应该导致任何类型的问题。请注意,此时我仍在使用 twisted 和 pygtk。我还没有用 gtk 复制这个。

这让我怀疑 pygtk 真的很不稳定......以前有人遇到过这个吗?有什么我可以做的吗?我从gtk 2.12 更新的原因是因为我的应用程序会随机崩溃,但这要糟糕得多。

更新:这些错误发生在 64 位 Windows 7 上。我已经尝试过使用上面列出的版本的 32 位 python,以及使用 pygtk-2.17.1、pygobject-2.21.2、pycairo 的 64 位 python -1.8.8 和 pywin32-214。

到目前为止,win32ui 错误不会在 Windows XP VirtualBox 虚拟机上进行相同的安装。

【问题讨论】:

    标签: python debugging crash gtk pygtk


    【解决方案1】:

    我已经在另一台计算机上安装了不同的 Win7 64 位系统,但效果很好。因此,特定计算机上的硬件/其他软件有些奇怪。可能与 gtk 或 win32 无关。

    【讨论】:

      猜你喜欢
      • 2014-11-21
      • 2010-11-20
      • 2010-09-14
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2016-12-12
      • 1970-01-01
      相关资源
      最近更新 更多