SOBREELTEMAPASADO (HERENCIA Y VARIABLES)
Publicado por Russ (33 intervenciones) el 27/04/2006 01:04:42
Si no se si te acuerdes que te pregunte sobre sockets que no me aceptara un numero determinado de conexiones (Sockets) que yo le especificara y me respondiste con una solucion dentro del ciclo while :......................
Bueno... a ver... mmm prrfffff...
Intenta esto...
int cantidad = 5;
while (true)
{
if(cantidad>0) {
socketClient = socketServer.accept();
conn = new SocketThread (socketClient);
conn start();
cantidad--;
System.out.println("Quedan "+cantidad+" conexiones por otorgar);
}
}
esa fue la solucion que me propusiste y por parte del servidor funciona pero que pasa si corro un 6o. cliente ??? el servidor no me lo acepta pero el cliente se queda trabado dentro de si mismo obviamente entonces pense que por parte del cliente tambien habia que hacer una validacion similar dentro del constructor:
if(....................)
{
socketCllient = new Socket (host,port);
}
else
{
System.exit (0);
o algo asi por ejemplo y entonces pense que dentro de la condicion dentro del bloque if tiene que ser de alguna forma la referencia de la cantidad de conexiones maximas permitidas en este caso y asi que sepa el cliente hasta cuantas veces se pueda ejecutar para este ejemplo la variable "cantidad" y para esto ya con el numero maximo de conexiones para que de esta forma pueda hacer mas o menos esto:
int contador = 0;
if(contador< cantidad)
{
socketCllient = new Socket (host,port);
contador ++;
}
else
{
System.exit (0);
para el caso del cliente.
Pero como habras notado tanto servidor como cliente estan en clases separadas cada una dentro de su propio metodo main y es por eso que si en el servidor le doy un valor (argv [ 0 ]) sea el mismo valor que reconozca el cliente y de ahi el porque de mi duda pasada en el post anterior (RE:PREGUNTA SENCILLA SOBRE VARIABLES Y HERENCIA )y es por eso que queria ver si es posible esto o no se si me puedas decir si hay otro modo de que el cliente sepa hasta el maximo numero de conexiones que pueda establecer con el servidor usando sus propios recursos dentro de su misma clase si es que no es posible ejecutar la solucion que propongo ............
MUchas gracias por tu molestia
Bueno... a ver... mmm prrfffff...
Intenta esto...
int cantidad = 5;
while (true)
{
if(cantidad>0) {
socketClient = socketServer.accept();
conn = new SocketThread (socketClient);
conn start();
cantidad--;
System.out.println("Quedan "+cantidad+" conexiones por otorgar);
}
}
esa fue la solucion que me propusiste y por parte del servidor funciona pero que pasa si corro un 6o. cliente ??? el servidor no me lo acepta pero el cliente se queda trabado dentro de si mismo obviamente entonces pense que por parte del cliente tambien habia que hacer una validacion similar dentro del constructor:
if(....................)
{
socketCllient = new Socket (host,port);
}
else
{
System.exit (0);
o algo asi por ejemplo y entonces pense que dentro de la condicion dentro del bloque if tiene que ser de alguna forma la referencia de la cantidad de conexiones maximas permitidas en este caso y asi que sepa el cliente hasta cuantas veces se pueda ejecutar para este ejemplo la variable "cantidad" y para esto ya con el numero maximo de conexiones para que de esta forma pueda hacer mas o menos esto:
int contador = 0;
if(contador< cantidad)
{
socketCllient = new Socket (host,port);
contador ++;
}
else
{
System.exit (0);
para el caso del cliente.
Pero como habras notado tanto servidor como cliente estan en clases separadas cada una dentro de su propio metodo main y es por eso que si en el servidor le doy un valor (argv [ 0 ]) sea el mismo valor que reconozca el cliente y de ahi el porque de mi duda pasada en el post anterior (RE:PREGUNTA SENCILLA SOBRE VARIABLES Y HERENCIA )y es por eso que queria ver si es posible esto o no se si me puedas decir si hay otro modo de que el cliente sepa hasta el maximo numero de conexiones que pueda establecer con el servidor usando sus propios recursos dentro de su misma clase si es que no es posible ejecutar la solucion que propongo ............
MUchas gracias por tu molestia
Valora esta pregunta
0