【问题标题】:What does "Gdk-WARNING **: gdk-frame-clock: layout continuously requested, giving up after 4 tries" mean?“Gdk-WARNING **: gdk-frame-clock: layout 不断请求,4 次尝试后放弃”是什么意思?
【发布时间】:2018-12-27 21:48:39
【问题描述】:

当我在 Ubuntu 18.04 中使用 pygobject 运行 gtk3 python 代码时,代码运行时没有任何警告。但是当我在 Ubuntu 16.04 上构建它时,我收到了以下警告:

Gdk-WARNING **: gdk-frame-clock: layout continuously requested, giving up after 4 tries

没有部分代码会在一秒钟内尝试刷新屏幕两次(除非有一些check_resize 事件)。我无法理解导致此错误的原因。我没有 Ubuntu 16.04。所以我也无法调试。

重现步骤

从卡扣安装边缘释放。

sudo snap install --edge halo-weather

并运行它。

halo-weather

这是一个名为Halo 的简单天气应用程序的开源项目。这是entry point python script

谁能给我一些指示?

【问题讨论】:

  • 它不会为我抛出这个错误。使用快照。
  • 嗨@theGtknerd,感谢您花时间帮助我。几天前我修好了。

标签: python-3.x gtk3 pygobject gdk


【解决方案1】:

该错误通常意味着您直接尝试修改 UI,使其与 GTK 线程不同步。

所以我们需要确保所有的 UI 更新函数都不是直接调用的,而是排队等待 Gtk 使用以下任何一种调用:

GLib.idle_add(callback, ...)
GLib.timeout_add(interval, callback, ...)  # X milliseconds delay
GLib.timeout_add_seconds(interval, callback, ...)  # X seconds delay

希望对某人有所帮助。

【讨论】:

    猜你喜欢
    • 2019-08-22
    • 2014-07-10
    • 2019-11-01
    • 1970-01-01
    • 1970-01-01
    • 2012-05-24
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多