Java: ¿Reutilizar Socket enlazado con IP diferente?

Quiero hacer algo como eso :

public void  myFun (String  tIps [])
{
    Socket  s = new Socket ();
    s.connect (new InetSocketAddress (serverIp, 80), 1000);

    for (int  i = 0 ; i < tIps.length ; ++i) 
    {
        // Rebind the socket with another Ip
        s.bind (new InetSocketAddress (tIps [i], 0));

        /*
        *   use the socket
        */
    }

    s.close ()
}

Pero recibo este error: "java.net.SocketException: Ya vinculado". Traté de usar s.setReuseAddress (verdadero), pero no cambió nada. ¿Hay alguna solución para evitar abrir un nuevo socket para cada solicitud, que es muy larga?

Gracias !

Respuesta 1

Eso no setReuseAddresses para lo que sirve. Esa función corresponde al clásico SO_REUSEADDR, que está relacionado con la reutilización de un puerto que algún otro proceso ha estado escuchando recientemente.

No hay forma en Java de hacer lo que quieres.

Respuesta: 2

¿Cómo enumero los elementos de una matriz doble []? Aquí está mi inicio y asignación. int final nr = 10; double [] cArray = new double [100]; System.arraycopy (Global.ArrayAlpha, 0, cArray, Global.ArrayBeta ....

Hasta ahora me llevaba bien con Android Java, pero ahora que estoy tratando de hacerlo bien y aprendo el bloc de notas me estoy perdiendo. Cuando ejecuto el Notepadv2 desde los tutoriales oficiales, obtengo exactamente lo mismo ...

¿Hay alguna forma de generar aleatoriamente una ruta de archivo arbitraria en Java? Lo que he estado pensando es que quizás podría elegir uno de una matriz preseleccionada, pero eso no sería muy aleatorio. ...

Quiero saber cómo filtrar datos en una tabla de base de datos e insertarlos en una tabla oscilante con enlace de bean en NetBeans. Leí el tutorial de enlace de beans de NetBeans, pero no es de mucha ayuda (muestra cómo cargar ...