02/09/2011, 14:44
|
| Colaborador | | Fecha de Ingreso: octubre-2004
Mensajes: 3.774
Antigüedad: 20 años, 3 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. |