Python \[Errno 98\] 地址已被使用

新手上路,请多包涵

在我的 Python 套接字程序中,有时我需要用 Ctrl-C 中断它。当我这样做时,它会使用 socket.close() 关闭连接。

但是,当我尝试重新打开它时,我必须等待一分钟才能再次连接。如何正确关闭套接字?或者这是故意的?

原文由 skylerl 发布,翻译遵循 CC BY-SA 4.0 许可协议

阅读 313
2 个回答

是的,这是有意的。在这里你可以阅读 详细的解释。可以通过在套接字上设置 SO_REUSEADDR 选项来覆盖此行为。例如:

 sock.setsockopt(socket.SOL_SOCKET, socket.SO_REUSEADDR, 1)

原文由 Bartosz 发布,翻译遵循 CC BY-SA 3.0 许可协议

$ ps -fA | grep python
501 81211 12368   0  10:11PM ttys000    0:03.12
python -m SimpleHTTPServer

$ kill 81211

原文由 ayoub laaziz 发布,翻译遵循 CC BY-SA 3.0 许可协议

撰写回答
你尚未登录,登录后可以
  • 和开发者交流问题的细节
  • 关注并接收问题和回答的更新提醒
  • 参与内容的编辑和改进,让解决方法与时俱进
推荐问题