IIC2233 / Syllabus-2023-1

75 stars 44 forks source link

Desconexión repentina del servidor #519

Open pulpaulaa opened 1 year ago

pulpaulaa commented 1 year ago

Prerrequisitos

(Marcar colocando una X entre los corchetes los ítems que ya hiciste, así: "[X]")

Duda

(No sé si se pueden preguntar cosas por acá si ya terminó el plazo normal de la tarea pero por si acaso)

Hola, llevo desde el inicio de la tarea sin poder cerrar el servidor de manera correcta (cuando se cierra repentinamente). Pregunté acá sobre cómo manejar un KeyboardInterrupt y nunca se llegó a una respuesta que funcionara, y ahora no sé cómo arreglar el código para hacerlo bien. Logré manejar la desconexión de los clientes, y cuando alguien gana, el servidor se cierra bien. Pero cuando se usa ctrl + c sale el error de keyboard interrupt. Intenté echando a los clientes o mandándoles un mensaje pero igual sale el error, no sé si ese tipo de formas de cerrar el servidor no debería ir en el mismo lugar que el cierre natural, si es otro tipo de excepción o si me falta cerrar algo antes. En el contenido y la ayudantía no hay casi nada sobre el cierre de sockets aparte de close y nada sobre como manejar esto :(

PD: Hice push

MIrarrazaval commented 1 year ago

Hola! Se pueden preguntar cosas hasta el ultimo día de la entrega atrasada, no te preocupes. El error KeyboardInterrupt solo avisa que el programa se interrumpió ocupando el ctrl + c. Puedes tratar de atraparlo con el try y except, pero como el "error" fue atrapado, el programa no se va a cerrar automáticamente. En general, no es necesario que manejes el KeyboardInterrupt y si te fijas en las experiencias que hemos hecho, en estas también aparece el error.