socket.SO_REUSEADDR的作用

2020年10月23日 / 8次阅读 / Last Modified 2020年10月23日
socket

编写socket程序,调试时常常遇到这样的错误:

OSError: [Errno 98] Address already in use

严重影响调试效率。。。此时可以考虑使用socket.SO_REUSEADDR参数,但是必须要清除它的作用,已经是否要在正式发布的软件中包含这个参数。

This is because the previous execution has left the socket in a TIME_WAIT state, and can’t be immediately reused.

要搞清楚socket.SO_REUSEADDR的作用,请参考 TCP的状态转换

使用此参数的方如下:

s = socket.socket(socket.AF_INET, socket.SOCK_STREAM)
s.setsockopt(socket.SOL_SOCKET, socket.SO_REUSEADDR, 1)
s.bind((HOST, PORT))

-- EOF --

本文链接:https://www.pynote.net/archives/2636

留言区

电子邮件地址不会被公开。 必填项已用*标注


前一篇:
后一篇:

More


©Copyright 麦新杰 Since 2019 Python笔记

go to top