套接字关机和重新绑定 – 如何避免漫长的等待?

我正在使用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() 

打到Cz运行除了代码,调用shutdownclosefunction,但我不能重新启动我的程序,直到套接字超时(GNU / Linux环境)。

我怎样才能避免这一点?

Solutions Collecting From Web of "套接字关机和重新绑定 – 如何避免漫长的等待?"

我不知道如何在Python中做到这一点,但你想设置SO_REUSEADDR套接字选项。