如何增加无响应程序的等待时间?


24

我已经安装了Ubuntu GNOME,发现我收到许多PROGRAM没有响应的消息。

我必须“强制退出”该程序或“等待”更多。

我注意到,每次我等待该程序时,该程序最终都会继续运行而不会出现问题。

因此,我认为可能有一个程序的“超时”配置被认为是无响应的,我想增加此超时。


同样的问题在这里。我经常在网络目录上工作,并且在大多数情况下,在保存文件之前,都会出现此消息。所以我只需要点击等待。我用gnome-shell搜索解决方案。
威利2014年

我也面临着同样的问题,但是我已经弄清楚了问题出在哪里。愿意合作解决此问题吗?tuxdna.in/blog/2014/07/15/...
tuxdna

我提出的功能要求与阅读本文无关:gitlab.gnome.org/GNOME/mutter/issues/32
Nathaniel M. Beaver

Answers:


14

无法配置,因为超时值在杂音源中定义为常数。gnome-shell指的是mutter库。我在杂音源mutter-3.10.4 / src / core / display.c中找到了超时值。

...
#define PING_TIMEOUT_DELAY 5000

它由名为meta_display_ping_window的下面的函数使用

ping_data->ping_timeout_id = g_timeout_add (PING_TIMEOUT_DELAY, meta_display_ping_timeout, ping_data);

激活窗口时从函数中引用它:

window_activate(mutter-3.10.4/src/core/window.c) -> meta_window_check_alive(mutter-3.10.4/src/core/delete.c) -> meta_display_ping_window(mutter-3.10.4/src/core/display.c)

如您在上面看到的,超时为5秒。

您可以为您修改值,因为mutter是开源项目。

当窗口关闭时,超时值是另一种情况。窗口删除流程如下

meta_window_delete(mutter-3.10.4/src/core/delete.c) -> meta_window_check_alive(mutter-3.10.4/src/core/delete.c) -> meta_display_ping_window(mutter-3.10.4/src/core/display.c)

但是,我认为您需要修改延迟窗口的源。或者,我认为您可以与杂乱无章的开发人员/维护人员进行讨论。

您可以使用以下命令准备构建环境并获取源代码。

$ sudo apt-get build-dep mutter
$ sudo apt-get source mutter

要构建它,请参考

https://www.debian.org/doc/manuals/apt-howto/ch-sourcehandling.en.html https://wiki.debian.org/BuildingTutorial


-1

我不知道回答这个老问题是否有任何意义,但也许对某人会有所帮助。

我尝试从源代码构建杂物库,但我放弃了,因为该库依赖于许多其他库,而这些库也依赖于其他库。

如果出现此对话框,我需要一种方法将其关闭,但无法在wine应用程序中将其关闭。因此,我用bash写了一个小脚本,如果该窗口出现,它将杀死该窗口。

#!/bin/bash 

while [  true ]; do
    VAL=$(ps -fA | grep "class mutter-dialog" | grep -cv grep)

    if [ $VAL -eq 1 ]
    then
            ID=$(ps -fA | grep "class mutter-dialog" | grep -v grep | awk '{print $2}')
            sleep 5
            echo killing $ID
            kill $ID
            exit 0
    fi

    sleep 10
done
By using our site, you acknowledge that you have read and understand our Cookie Policy and Privacy Policy.
Licensed under cc by-sa 3.0 with attribution required.