我编写了一个与特定端口上的服务器交互的小程序。该程序运行良好,但是:
一旦程序意外终止,并且该套接字连接显示为 CLOSE_WAIT
状态。如果我尝试运行一个程序,它会挂起,我必须强制它关闭,这会累积 更多 CLOSE_WAIT
套接字连接。
有没有办法刷新这些连接?
最佳答案
CLOSE_WAIT
表示您的程序仍在运行,并且尚未关闭套接字(内核正在等待它这样做)。将 -p
添加到 netstat
以获取 pid,然后更强力地终止它(如果需要,使用 SIGKILL
)。那应该摆脱您的 CLOSE_WAIT
套接字。您也可以使用 ps
来查找 pid。
SO_REUSEADDR
用于服务器和 TIME_WAIT
套接字,因此不适用于此处。
关于linux - 如何删除 CLOSE_WAIT 套接字连接,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/15912370/