응답하지 않는 프로그램의 대기 시간을 늘리는 방법은 무엇입니까?


24

Ubuntu GNOME을 설치했는데 많은 프로그램이 응답하지 않는 메시지를 발견했습니다.

프로그램을 "강제 종료"하거나 "대기"해야합니다.

프로그램을 기다릴 때마다 문제없이 프로그램이 계속 진행되는 것을 알았습니다.

그래서, 내가 생각하는 프로그램이 응답하지 않는 것으로 간주 될 나는이 시간 제한을 늘릴에 대한 "제한 시간"설정이있을 수 있습니다.


여기서도 같은 문제입니다. 나는 네트워크 디렉토리에서 자주 일하고 있으며 대부분의 경우 파일이 저장되기 직전에 메시지가 나왔다. 기다림 만 클릭하면됩니다. gnome-shell을 사용하여 솔루션을 검색합니다.
Willi

나는 또한 같은 문제에 직면하고 있지만 문제가 정확히 어디에 있는지 알아 냈습니다. 이 문제를 해결하기 위해 공동 작업을 하시겠습니까? tuxdna.in/blog/2014/07/15/…
tuxdna

이 요청을 독립적으로 제출 한 기능 요청 : gitlab.gnome.org/GNOME/mutter/issues/32
Nathaniel M. Beaver

답변:


14

제한 시간 값이 머 터링 소스에서 상수 값으로 정의되어 있으므로 구성 할 수 없습니다 . gnome-shell은 머터 라이브러리를 나타냅니다. 머터 소스 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 초입니다.

머 터는 오픈 소스 프로젝트이기 때문에 당신을 위해 값을 수정할 수 있습니다.

그리고 창을 닫을 때 시간 초과 값이 다른 경우에 참조됩니다. 창 삭제 흐름은

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

이 오래된 질문에 대답하는 것이 의미가 있는지는 모르지만 누군가에게는 도움이 될 것입니다.

소스에서 머터 라이브러리를 만들려고했지만이 라이브러리는 다른 많은 라이브러리에 의존하고 해당 라이브러리는 다른 라이브러리에도 의존하기 때문에 포기했습니다.

이 대화 상자가 나타나면 한 번 닫는 방법이 필요했지만 와인 응용 프로그램 에서는이 대화 상자를 닫을 수 없었습니다 . 그래서 나는 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
당사 사이트를 사용함과 동시에 당사의 쿠키 정책개인정보 보호정책을 읽고 이해하였음을 인정하는 것으로 간주합니다.
Licensed under cc by-sa 3.0 with attribution required.