複数のプロセスを生成するPythonアプリケーションを実行しています。ポート56008を使用してクライアント要求をリッスンします。閉じた後も、使用したポートがまだ「使用中」である場合があります。 python実行されているように見えますが、kill
を使用してそれらを強制終了しようとしても影響はないようです。
アプリケーションを再起動できるように、手動で解放するにはどうすればよいですか?
より詳しい情報:
ps -C python
の出力
PID TTY TIME CMD
30118 pts/1 00:00:00 python
30131 pts/1 00:00:00 python
*フォーマットは合計で約30行です[pid] pts/1 00:00:00 python
netstat -tulp
の出力(関連行のみ):
Proto Recv-Q Send-Q Local Address Foreign Address State PID/Program name
tcp 0 0 *:56008 *:* LISTEN -
これはトリックをしました
Sudo kill -9 `ps -C python | grep python | grep -v grep | awk '{print $1}'`
アプリケーションがどのように終了するかを適切にコーディングしてみてください(たとえば、すべての子を強制終了する、ネットワークソケットを閉じる)