Hola vejerf,
Ciertamente "ReadTimeout" te desconectará del servidor tras superar el periodo de inactividad.
En una aplicación cliente que tiene que estar constantemente "escuchando" al servidor, es un complicado decidir qué tiempo es el más razonable para establecer el ReadTimeout.
Por un lado, si estableces un timeout muy pequeño, tendrás que hacer lo que comentas, generar actividad simplemente para que los hilos no se desconecten, con el riesgo de crear tráfico de red innecesario.
Por otro lado, si lo estableces muy alto, cuando tu servidor se cuelgue, el cliente tardará tiempo en darse cuenta y se quedará congelado.
Pero una pregunta: ¿tu software cliente está constantemente esperando respuesta por el servidor? o ¿es el servidor el que espera comandos y emite respuetas al cliente?
Respecto a la diferencia entre IOHandler y Socket, no sabría decirte qué diferencias existe entre ambos.
Un saludo.
|