s = socket.socket(socket.AF_INET, socket.SOCK_STREAM)
host = socket.gethostname() # Get local machine name
port = 12345 # Reserve a port for your service.
s.bind((host, port)) # Bind to the port
s.listen(5) # Now wait for client connection.
print "entered loop"
c, addr = s.accept() # Establish connection with client.
我正在使用这段代码来创建套接字并从Android接受连接。很简单。
但是从过去几个小时开始(代码没有变化),python由于某种原因无法创建套接字。我没有收到任何错误,但它永远停留在s.accept()
行。
我尝试在我的Android上使用Fing
网络诊断应用程序查看开放端口,实际上,Python无法创建/打开套接字。早些时候,只要我运行代码并在Fing上重新扫描,我就能看到端口打开并在其上测试TCP连接。
有时,在两者之间随机发生,它可以进行一两次尝试。
可能出现什么问题?我试图改变端口。我不知道要调试什么,因为没有任何错误!
答案 0 :(得分:0)
同样的错误发生在我身上。这是因为没有关闭Socket。尝试关闭套接字。 否则它将在你运行时运行一次,之后它将开始引起问题。