1

この質問は、以前に尋ねられこの質問の拡張です:

次のパラメーターを使用して 、 jxhによって提供されたソリューションを実装しました。

SO_KEEPALIVE = Enabled  
TCP_KEEPIDLE = 120 secs  
TCP_KEEPINTVL = 75 secs  
TCP_KEEPCNT = 1

それでは、なぜサーバーはクライアントが応答するのを永遠に待つのでしょうか?

また、ネットで知ったのですが、

kill <pid>指定されたプロセスに実際に送信SIGTERMします。

ps -o pid,cmd,stateそのため、telnet アプリケーションを「強制終了」した後にコマンドを使用しました。

telnet プロセスがまだ存在していることがわかりprocess state = Tましたが、つまりSTOPPED状態でした

PS:私は Linux Signals についてあまり知識がありません。そのことを考慮してください。

4

2 に答える 2

2

クライアントはまだ終了しておらず、まだ STOPPED 状態であるため、接続も閉じていません。

于 2013-08-19T10:26:05.327 に答える