TCP端口复用引起的异常,用setsockopt来解决

TCP端口复用引起的异常,用setsockopt来解决

咱们在并发链接一个服务端时候他会出现这种状况python

OSError: [WinError 10048] 一般每一个套接字地址(协议/网络地址/端口)只容许使用一次。网络

假如端口被socket使用过,而且利用socket.close()来关闭链接,但此时端口尚未释放,要通过一个TIME_WAIT的过程以后才能使用,这是TNN的至关烦银的,为了实现端口的立刻复用,能够选择setsockopt()函数来达到.并发

端口复用的实现,我在这里用Python举个TCP端口复用的例子,UDP套接字要作的彻底同样。socket

咱们能够在定义好的端口加这句tcp

from socket import 

server = socket()
server.setsockopt(SOL_SOCKET, SO_REUSEADDR, 1)
server.bind(('127.0.0.1', 8000))
server.listen(5)

这样就不会报错了函数

相关文章
相关标签/搜索