0

X サーバーのリモート アプリケーションでのタイムアウトを減らす方法が必要です。現在、X11 は、イーサネット接続を削除した後、アプリケーションを非常に長い時間 (> 30 分) ディスプレイに表示したままにします。アプリケーションとの通信が失われてから 10 ~ 30 秒以内にタイムアウトする必要があります。

変更を加えていない標準の Xorg サーバーを実行しています。これを行うために多くの方法を試しました。X サーバーで -to オプションを使用してみましたが、効果がないようです。また、sysctl を使用して TCP プロパティをいじってみました。tcp_keepalive_* プロパティを、必要なタイムアウトを与える値に設定しましたが、これもタイムアウトに影響していないようです。

また、リモート アプリケーションは、サーバーへの接続に SSH トンネリングを使用していません。安全な接続上のオープン サーバーであるため、トンネリングは必要ありません。アプリケーションを制御できないため、タイムアウトメカニズムはサーバー側で実行する必要があります。

Xサーバーから必要な動作を取得する方法を知っている人はいますか?

4

1 に答える 1

0

X サーバーにはクライアント タイムアウトがありません。そのように見えるものはすべて、X ではなく TCP が行っていることです。

運が良ければ、話しているアプリケーションは _NET_WM_PING プロトコルに応答します (ほとんどの最新のツールキットはこれを内部で行います)。XKillClient少なくとも使用しているウィンドウ マネージャーを制御できる場合は、それを変更して、実行中のすべてのアプリに ping メッセージを送信し、アプリがすぐに応答しない場合は吹き飛ばすことができます。

于 2012-08-29T02:05:22.993 に答える