ソケットがどのように機能するのか理解していないので、誰かが助けてくれるかもしれません。次の例では、「Sent Hello. Received: Hello to you!」と出力して永遠にループすると思いましたが、実際には 2 回ループしてからハングします。タイムアウト、ピアによる接続のリセットなどはありません。ハングするだけです。
import socket
socket_list = []
for i in range(60000, 60002):
soc = socket.socket(socket.AF_INET, socket.SOCK_STREAM)
soc.connect("",i)
socket_list.append(soc)
while True:
for soc in socket_list:
soc.sendall("Hello.")
msg = soc.recv(1024)
print "Sent Hello. Received:",msg
接続の反対側のコードは次のとおりです。
import socket
soc = socket.socket(socket.AF_INET,socket.SOCK_STREAM)
soc.bind("localhost",6000x)
while True:
soc.listen(1)
conn, addr = soc.accept()
msg = conn.recv(1024)
if msg == "Hello":
conn.sendall("Hello to you!")