Python Socket Server TCP Status erkennen?
Hi, ich suche jetzt leider schon seit Stunden:
Ich hätte gerne in der Bedingung der While-Schleife irgendetwas stehen was den Status von TCP überprüft, also ob der Client noch anwesend ist, oder nicht, ohne das mit einem Timeout regeln zu müssen.
Geht das?
LG.
import socket
import time
host = '0.0.0.0'
port = 5000
timeout = 5.0
def server_program():
print('listen on: '+host)
ss = socket.socket()
ss.bind((host, port))
ss.listen(5)
(conn, address) = ss.accept()
#WAITNING FOR SOCKET
print("Client: " + str(address))
timestamp = time.time()
while timestamp+timeout>time.time():
c = 0
data = conn.recv(1024*10)
#datay = data.decode()
if not data:
None
else:
#print('return: "'+str(datay)+'"')
conn.send(data)
timestamp = time.time()
time.sleep(0.1)
conn.close()
if __name__ == '__main__':
server_program()