¿Cómo aumentar el tiempo de espera para los programas que no responden?

¿Cómo aumentar el tiempo de espera para los programas que no responden?

Instalé Ubuntu GNOME y descubrí que recibo muchos mensajes de PROGRAMA que no responde.

Tengo que "Forzar la salida" del programa o "Esperar" un poco más.

He notado que cada vez que espero el programa, éste finalmente continúa sin problemas.

AsiquepensarEs posible que haya una configuración de "tiempo de espera" para que los programas se consideren que no responden y quiero aumentar este tiempo de espera.

Respuesta1

No se pudo configurar porque else acabó el tiempoEl valor se define como valor constante en la fuente del murmullo. gnome-Shell hace referencia a la biblioteca Mutter. Encontré el valor del tiempo de espera en la fuente del murmullo, mutter-3.10.4/src/core/display.c.

...
#define PING_TIMEOUT_DELAY 5000

Y es utilizado por una función a continuación llamada meta_display_ping_window

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

Se refiere desde la función cuando se activa la ventana:

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)

Como puede ver arriba, el tiempo de espera es de 5 segundos.

Puede modificar el valor solo para usted porque Mutter es un proyecto de código abierto.

Y el valor del tiempo de espera se refiere a otro caso cuando la ventana está cerrada. El flujo de eliminación de ventanas es el siguiente

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)

Sin embargo, creo que necesitas modificar la fuente de tu ventana retrasada. O creo que puedes discutirlo con los desarrolladores/mantenedores de murmullos.

Puede preparar el entorno de compilación y obtener la fuente con los siguientes comandos.

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

Para construirlo, consulte

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

Respuesta2

El uso puede cambiar el valor del murmullo a través de dconf (/org/gnome/mutter/check-alive-timeout); el valor predeterminado es 5000.

Respuesta3

Este error fue solucionado. Se lanzó un backport para Ubuntu 18 como gnome-shell 3.28.4 el 2019-6-6. VerCómo deshabilitar el cuadro de diálogo "La ventana no responde"

Respuesta4

No sé si responder a esta vieja pregunta tiene algún sentido, pero quizás a alguien le resulte útil.

Intenté construir la biblioteca Mutter desde el código fuente, pero me di por vencido, porque esta biblioteca depende de muchas otras bibliotecas, y esas bibliotecas también dependen de otras bibliotecas.

Necesitaba una forma de cerrar este cuadro de diálogo una vez si aparece, pero no pude cerrarlo en elvinosolicitud. Entonces escribí un pequeño script en bash, que cerrará esta ventana si aparece.

#!/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

información relacionada