Witam mam taki problem iz moj server po teorytycznie otrzymaniu wiadomosci Gra zakonczona nie wylacza servera nie wiem jak przekzac zmienna czy ktos mogl by mi pomoc? KOD:
class ClientThread(threading.Thread):
def __init__(self,connection):
threading.Thread.__init__(self)
self.connection = connection
def run(self):
try:
# receive data from client - TCP
data = self.connection.recv(1024)
splited_data = data.split()
print(splited_data)
if data:
check_database_connection()
print ('received "%s"' % data)
if check_if_user_exists(str(splited_data[2]), str(splited_data[3])):
# send data to client TCP
self.connection.sendall("OK")
status = True
else:
self.connection.sendall("FAILED")
random_array = get_random_numbers()
if status:
for number in random_array:
print(number)
self.connection.sendall(str(number))
answer = self.connection.recv(2)
print(answer)
if answer == 'T1':
pass
elif answer =='T2':
-----------------------> TU POWINNA BYC ZMIENNA COS TYPU is_game_over = TRUE <---------------------------------------
print("Gra skonczona!!")
self.connection.close()
break
time.sleep(2)
finally:
pass
class Server:
def __init__(self,ip,port):
self.ip = '127.0.0.1'
self.port = 6666
def start_server(self):
# TCP socket
sock = socket.socket(socket.AF_INET, socket.SOCK_STREAM)
# nie bedzie bledu address already in use
sock.setsockopt(socket.SOL_SOCKET, socket.SO_REUSEADDR, 1)
server_address = (self.ip, self.port)
sock.bind(server_address)
sock.listen(1)
while True:
connection, client_address = sock.accept()
client = ClientThread(connection)
client.start()
------------>TU WSTAWIC TA ZMIENNA A POTEM connection,close() <-----------------------------
Czy ktos ma pomysl jak to zrobic?