web-dev-qa-db-ja.com

応答しないプログラムの待ち時間を増やす方法は?

Ubuntu GNOMEをインストールしましたが、たくさんのPROGRAMが応答しないというメッセージを受け取りました。

プログラムを「強制終了」するか、もう少し「待機」する必要があります。

プログラムを待つたびに、プログラムが問題なく継続することに気付きました。

したがって、私は思考プログラムが応答しないと見なされるための「タイムアウト」構成がある可能性があり、このタイムアウトを増やしたいと思います。

23
malhobayyeb

timeout値は、mutterソースで定数値として定義されているため、構成できませんでした。 gnome-Shellは、つぶやきライブラリを指します。 mutter-source、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.htmlhttps://wiki.debian.org/BuildingTutorial

12
xiaodongjie