29/09/2015, 12:48
|
| Colaborador | | Fecha de Ingreso: octubre-2004
Mensajes: 3.774
Antigüedad: 20 años, 1 mes Puntos: 454 | |
Respuesta: socket cuelga el programa Hola:
Esta línea
conexion=new Socket(IP,puerto);
abre un socket cliente que intenta conectarse a un servidor que está en la IP y escuchando en el puerto. Una posiblidad para que esa llamada se quede colgada es que hay un servidor escuchando en esa IP y puerto (serverSocket = new ServerSocket()), pero no hace un accept() de la conexión (serverSocket.accept()), el cliente (tu código) se quedará colgado en espera de ese accept()
Un posible motivo de que te suceda esto es que estás haciendo dos clientes (uno en el servidor de servicios y otro en el cliente, con esa llamada new Socket(IP,puerto), así que tienes que asegurarte que tu servidor (ServerSocket) es capaz de atender a varios clientes, es decir, hace varios accept(). Suele ser un error habitual hacer el accept() y liarse con mensajes del cliente, olvidándose de lanzar un hilo o algo que sea capaz de hacer un segundo accept() si un segundo cliente intenta conectarse.
Se bueno. |