为什么我的pygtk应用程序在剪贴板上复制文本时崩溃了?

时间:2010-07-09 11:08:55

标签: python multithreading gtk pygtk clipboard

我正在使用pygtk编写python应用程序。我有一个主线程偶尔调用另一个应该构建字符串的线程,然后在死亡之前将其复制到剪贴板上。我的“奴隶”线程看起来非常像这样:

class Slave(threading.Thread):
    def run(self):
        s = build_string()
        c = gtk.Clipboard()
        c.set_text(s)

不幸的是,我的应用程序崩溃了三分之一的时间,显示如下消息:

python: xcb_io.c:221: poll_for_event: Assertion `(((long) (event_sequence) - (long) (dpy->request)) <= 0)' failed.
cloudapp.py: Fatal IO error 11 (Resource temporarily unavailable) on X server :0.0.

有什么想法吗?这可能是一个线程问题吗?我尝试初始化Slave内部的剪贴板。 init ,将字符串放在TextBuffer上,然后调用tb.copy_clipboard(c),我尝试了所有内容,但没有一个工作。

1 个答案:

答案 0 :(得分:0)

如果不采取一些必要的预防措施,您无法从线程与Gtk交互。检查this PyGTK FAQ entry