Ver Mensaje Individual
  #2 (permalink)  
Antiguo 02/09/2011, 14:44
Avatar de chuidiang
chuidiang
Colaborador
 
Fecha de Ingreso: octubre-2004
Mensajes: 3.774
Antigüedad: 19 años, 7 meses
Puntos: 454
Respuesta: desconexión de socket (cliente)

Si uno de los lados se desconecta de forma correcta (llamando al método close() del programa), el otro lado se entera inmediatamente en cuanto intenta hacer un read o un write.

Si uno de los lados se desconecta de forma incorrecta (se cae por ejemplo), te puedes enterar inmediatamente al hacer un read() o write() si fijas la opción SO_KEEP_ALIVE del socket a true (método setKeepAlive(true)). Si no la fijas, puede pasar un tiempo más o menos grande hasta que te enteres.

Si se quita el cable de red, no te enterarás de la desconexión hasta que pase un tiempo grande, quizás de uno o dos minutos.

Se bueno.
__________________
Apuntes Java
Wiki de Programación