Como aumentar o tempo de espera para programas que não respondem?

24

Instalei o Ubuntu GNOME e descobri que estou recebendo muito PROGRAMA não está respondendo às mensagens.

Eu tenho que "Forçar Encerrar" o programa ou "Aguardar" um pouco mais.

Percebi que cada vez que espero pelo programa, o programa continua sem problemas.

Portanto, acho que pode haver uma configuração de "tempo limite" para que os programas sejam considerados sem resposta e desejo aumentar esse tempo limite.

malhobayyeb
fonte
O mesmo problema aqui. Eu trabalho frequentemente em um diretório de rede e minha mensagem veio na maioria dos casos pouco antes do arquivo ser salvo. Então, basta clicar em esperar. Eu procuro uma solução com o gnome-shell.
Willi
Também estou enfrentando o mesmo problema, no entanto, descobri exatamente onde está o problema. Gostaria de colaborar para corrigir isso? tuxdna.in/blog/2014/07/15/…
tuxdna
Pedido de recurso que eu arquivei independentemente de ler o seguinte: gitlab.gnome.org/GNOME/mutter/issues/32
Nathaniel M. Beaver

Respostas:

14

Não foi possível configurar, porque o valor do tempo limite é definido como valor constante na fonte do murmúrio. gnome-shell refere-se à biblioteca de murmúrios. Encontrei o valor do tempo limite na fonte do mutter, mutter-3.10.4 / src / core / display.c.

...
#define PING_TIMEOUT_DELAY 5000

E é usado por uma função abaixo chamada meta_display_ping_window

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

É referido a partir da função quando a janela é ativada:

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 você pode ver acima, o tempo limite é de 5 segundos.

Você pode modificar o valor apenas para você porque o mutter é um projeto de código aberto.

E o valor do tempo limite é referido outro caso quando a janela é fechada. O fluxo de exclusão da janela é tão

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)

No entanto, acho que você precisa modificar a fonte da sua janela atrasada. Ou acho que você pode discutir sobre isso com os desenvolvedores / mantenedores do murmúrio.

Você pode preparar o ambiente de construção e obter a fonte com os seguintes comandos.

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

Para construí-lo, consulte

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

xiaodongjie
fonte
-1

Não sei se responder a essa pergunta antiga tem algum sentido, mas talvez para alguém seja útil.

Tentei construir a biblioteca do murmúrio a partir da fonte, mas desisti, porque essa biblioteca depende de muitas outras bibliotecas e essas bibliotecas também dependem de outras bibliotecas.

Eu precisava de uma maneira de fechar esse diálogo uma vez, se aparecer, mas não consegui fechá-lo no aplicativo wine . Então, eu escrevi um pequeno script no bash, que matará essa janela se ela aparecer.

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