Yanıt vermeyen programlar için bekleme süresi nasıl artırılır?


24

Bir Ubuntu GNOME kurdum ve çok sayıda PROGRAM aldığımı mesajlara cevap vermediğini öğrendim.

Programı "Zorla Bırak" ya da biraz daha "Bekle" ye sahibim.

Program için her beklediğimde, programın sorun yaşamadan devam ettiğini fark ettim.

Yani, bence programlar olmayan yanıt dikkat edilmesi gereken ve bu zaman aşımı artırmak isteyen için bir "zaman aşımı" yapılandırma olabilir.


Burada da aynı sorun. Genellikle bir ağ dizininde çalışırım ve mesajım dosya kaydedilmeden hemen önce gelir. Bu yüzden sadece beklemeye tıklayın. GNOME kabuğuyla bir çözüm arıyorum.
Willi

Aynı sorunla da karşı karşıyayım, ancak sorunun tam olarak nerede olduğunu anladım. Bunu düzeltmek için işbirliği yapmak ister misiniz? tuxdna.in/blog/2014/07/15/…
tuxdna

Özellik isteği bunu okumaktan bağımsız olarak başvurdum: gitlab.gnome.org/GNOME/mutter/issues/32
Nathaniel M. Beaver

Yanıtlar:


14

Zaman aşımı değeri, mutter kaynağında sabit değer olarak tanımlandığından yapılandırılamadı . gnome-shell mutter kütüphanesini ifade eder. Mutter kaynağında, mutter-3.10.4 / src / core / display.c zaman aşımı değerini buldum.

...
#define PING_TIMEOUT_DELAY 5000

Ve meta_display_ping_window adlı bir aşağıdaki işlev tarafından kullanılır

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

Pencere aktifken fonksiyondan bahsedilir:

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)

Yukarıda gördüğünüz gibi zaman aşımı süresi 5 saniyedir.

Mutter açık kaynaklı bir proje olduğu için değeri sadece sizin için değiştirebilirsiniz.

Zaman aşımı değeri, pencere kapatıldığında başka bir durumda belirtilir. Pencere silme akışı gibidir

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)

Ancak, gecikmiş pencereniz için kaynağı değiştirmeniz gerektiğini düşünüyorum. Ya da bunun hakkında, müteahhit / geliştiricilerle konuşabileceğinizi düşünüyorum.

Oluşturma ortamını hazırlayabilir ve aşağıdaki komutlarla kaynağı alabilirsiniz.

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

İnşa etmek için

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


-1

Bu eski soruyu cevaplamanın bir anlamı var mı bilmiyorum, ama belki de birisi için yardımcı olacaktır.

Mutter kütüphanesini kaynaktan kurmaya çalıştım, ama vazgeçtim, çünkü bu kütüphane diğer kütüphanelere bağlı ve bu kütüphaneler de diğer kütüphanelere bağlı.

Göründüğü zaman bir kez bu diyaloğu kapatmanın bir yoluna ihtiyacım vardı, ancak şarap uygulamasında kapatamadım . Ben de bash olarak küçük bir senaryo yazdım, bu pencereyi göründüğünde öldürecektir.

#!/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
Sitemizi kullandığınızda şunları okuyup anladığınızı kabul etmiş olursunuz: Çerez Politikası ve Gizlilik Politikası.
Licensed under cc by-sa 3.0 with attribution required.