如何在死前关闭套接字? 我在linux上有一个创建TCP服务器的服务。有时我必须重新启动它,我希望套接字真的关闭。此刻它挂了。 我也知道SIGKILL无法处理。 有人能指出我正确的方向吗?
答案 0 :(得分:4)
套接字将关闭 - 操作系统将自动执行此操作,请参阅:Using SO_REUSEADDR - What happens to previously open socket?
而不是试图处理不起作用的SIGKILL,而不是在开始时解决问题:
使用SO_REUSEADDR
套接字选项,可以立即重复使用该端口。
答案 1 :(得分:0)
你无法对SIGKILL做任何事情。您应该尝试处理SIGTERM和/或SIGINT以终止服务并关闭套接字。
除非
,否则无需发送SIGKILL如果要重新启动服务,则应发送SIGTERM或SIGINT而不是SIGKILL。