我正在运行一个生成多个进程的 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 -
答案1
这招奏效了
sudo kill -9 `ps -C python | grep python | grep -v grep | awk '{print $1}'`
答案2
您可以尝试并正确编写代码来说明应用程序如何退出(例如,杀死所有子项、关闭网络套接字)