Se pierde comunicación entre socket y cliente
Publicado por Juan (70 intervenciones) el 26/03/2020 13:24:20
Buenas, tengo un pequeño problema y no doy con la solución. tengo una aplicacion java en un servidor, que recibe conexiones mediante sockets.
La conexión es como cualquier otra. el servidor abre un puerto, el cliente se conecta a ese puerto. y el cliente se queda a la espera en un ciclo infinito recibiendo los mensajes, realizando las tareas y volviendo a esperar un mensaje.
la conexión se recibe bien, y todos los mensajes tambien, puedo mandar 500 mensajes y los recibe todos. siempre y cuando no haya 1 min o mas de diferencia entre ellos. porque si estoy mas de 1 min sin recibir nada, ya no me llegan los mensajes.
No se cierra el socket ni salta una exception. he estado debugeando ambos programas tanto cliente como servidor.
El cliente se queda en la lÃnea "mensaje=entrada.readUTF();" y el servidor, envÃa el mensaje sin dar error,es decir la lÃnea "sendCliente.writeUTF("************"); la ejecuta y continua con la siguiente instrucción. si dar exception alguna.
Porque al cabo de un minuto el cliente no recibe el mensaje? si no hay fallo en ninguno de los casos?
Hay un tiempo de espera? se puede ampliar ese tiempo de espera?
Gracias por vuestra ayuda.
La conexión es como cualquier otra. el servidor abre un puerto, el cliente se conecta a ese puerto. y el cliente se queda a la espera en un ciclo infinito recibiendo los mensajes, realizando las tareas y volviendo a esperar un mensaje.
la conexión se recibe bien, y todos los mensajes tambien, puedo mandar 500 mensajes y los recibe todos. siempre y cuando no haya 1 min o mas de diferencia entre ellos. porque si estoy mas de 1 min sin recibir nada, ya no me llegan los mensajes.
No se cierra el socket ni salta una exception. he estado debugeando ambos programas tanto cliente como servidor.
El cliente se queda en la lÃnea "mensaje=entrada.readUTF();" y el servidor, envÃa el mensaje sin dar error,es decir la lÃnea "sendCliente.writeUTF("************"); la ejecuta y continua con la siguiente instrucción. si dar exception alguna.
Porque al cabo de un minuto el cliente no recibe el mensaje? si no hay fallo en ninguno de los casos?
Hay un tiempo de espera? se puede ampliar ese tiempo de espera?
Gracias por vuestra ayuda.
Valora esta pregunta


0