Warning: file_get_contents(/data/phpspider/zhask/data//catemap/0/windows/16.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Python 服务器被杀死后如何回收TCP端口?_Python_Windows_Sockets - Fatal编程技术网

Python 服务器被杀死后如何回收TCP端口?

Python 服务器被杀死后如何回收TCP端口?,python,windows,sockets,Python,Windows,Sockets,我使用python编写了一个简单的RPC服务器,它监听端口80 操作系统是Windows7 如果出现一些错误,服务器会被卡住,它将被终止,然后重新启动。但当它重新启动时,端口80尚未释放,它无法绑定到80,因此无法工作 如果我再等一段时间,然后尝试重新启动它,它就会成功 我想知道当服务器进程被终止时,如何强制回收端口 有什么建议吗?服务器是否在绑定到端口80之前设置了SO\u REUSEADDRsocket选项?如果是这样的话,那么你就不应该经历这种延迟。如果没有,恐怕你只能等待延期到期。在后一

我使用python编写了一个简单的RPC服务器,它监听端口80

操作系统是Windows7

如果出现一些错误,服务器会被卡住,它将被终止,然后重新启动。但当它重新启动时,端口80尚未释放,它无法绑定到80,因此无法工作

如果我再等一段时间,然后尝试重新启动它,它就会成功

我想知道当服务器进程被终止时,如何强制回收端口


有什么建议吗?

服务器是否在绑定到端口80之前设置了
SO\u REUSEADDR
socket选项?如果是这样的话,那么你就不应该经历这种延迟。如果没有,恐怕你只能等待延期到期。在后一种情况下,当您耐心等待延迟过期时,您可以将
setsockopt(socket\u fd,SOL\u socket,SO\u REUSEADDR,&one)
添加到您的代码中,以便下次不会发生这种情况。我没有设置SO\u REUSEADDR。我会照你的建议去做的。谢谢