1
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()条线上。

我尝试Fing在我的 Android 上使用网络诊断应用程序来查看打开的端口,实际上,Python 无法创建/打开套接字。早些时候,只要我在 Fing 上运行代码并重新扫描,我就能看到端口打开并在其上测试 TCP 连接。

有时,在两者之间随机地,它适用于一两次尝试。

可能出了什么问题?我试图改变端口。我不知道要调试什么,因为没有任何错误!

4

1 回答 1

0

同样的错误发生在我身上。这是由于没有关闭 Socket 。尝试关闭套接字。否则它会在你运行时运行一次,然后它会开始引起问题。

于 2013-10-22T07:08:58.713 回答