def find_free_port(start=49152, stop=65536, listen=True):
s = socket.socket(socket.AF_INET, socket.SOCK_STREAM)
s.setsockopt(socket.SOL_SOCKET, socket.SO_REUSEADDR, 1)
for i in range(20000):
try:
port = random.randint(start, stop)
s.bind(('', port))
if listen:
s.listen(socket.SOMAXCONN)
return (s, port)
except Exception, e:
pass
raise Exception('no free port available')
### THE CONNECTION CLASS #######################################################
评论列表
文章目录