Enr*_*sso 4 python sockets linux python-3.x
我正在 python 中使用套接字,并且在开发阶段我需要经常终止并重新启动我的程序。
问题是,一旦杀死了我的 python 脚本,我必须等待很长时间才能重新绑定侦听套接字。这是重现该问题的片段:
#!/usr/bin/env python3
import socket
s = socket.socket(socket.AF_INET, socket.SOCK_STREAM)
s.bind((socket.gethostname(), 4321))
try:
s.listen(5)
while True:
(a, b) = s.accept()
print(a.recv(1000))
except KeyboardInterrupt:
print("Closing")
s.shutdown(socket.SHUT_RDWR)
s.close()
Run Code Online (Sandbox Code Playgroud)
点击 Cz 运行例外代码、调用shutdown和close函数,但我无法重新启动我的程序,直到套接字超时(GNU/Linux 环境)。
我怎样才能避免这种情况?
我不知道如何在 Python 中执行此操作,但您想设置 SO_REUSEADDR 套接字选项。
| 归档时间: |
|
| 查看次数: |
4399 次 |
| 最近记录: |