擅长:python、mysql、java
<pre><code>newsock, clientaddr = oldsock.accept()
while True:
print newsock.recv(100), "from", clientaddr[0], "on port", clientaddr[1]
</code></pre>
<p>当OS接收到侦听端口上的连接时,OS将端口切换到新的空闲端口。
这样,您就可以继续监听您的端口以获得新的连接,同时使用刚刚到达的端口。
插座.接受()将等待连接到来,然后返回绑定到新端口的新套接字和元组(address,port),其中address是客户端的IP,port是OS内部提供的新端口。
因此,如果您想取消accept()方法与receive()的关联,则必须将新套接字保存在某个属性中。
或者像garph0所说的那样作为一个论据。在</p>
<p>据我所知,当客户端断开连接时,recv()将抛出一个错误。然后你打电话来newsock.关闭(),或者当你想在客户面前把门关上的时候,你就叫它。然后你平静地继续等待新的。在</p>